flutter_esim 0.0.4 copy "flutter_esim: ^0.0.4" to clipboard
flutter_esim: ^0.0.4 copied to clipboard

A Flutter plugin for eSim, checker and installer. This repository hosts a Flutter plugin designed to check device compatibility with eSIM and facilitate the installation of eSIM profiles directly with [...]

Flutter eSIM Plugin #

pub package GitHub stars GitHub forks GitHub issues GitHub license

A Flutter plugin for checking eSIM support and installing eSIM profiles directly within your app.

Table of Contents #

Getting Started #

To use this plugin, add flutter_esim as a dependency in your pubspec.yaml file.

dependencies:
  flutter_esim: ^latest_version

Then, run the command:

flutter pub get

Installation #

Make sure to follow the platform-specific setup for your project:

Android: No additional setup required.
iOS: No additional setup required.

Usage #

Import the library in your Dart file:

import 'package:flutter_esim/flutter_esim.dart';

Now you can use the FlutterEsim class to check eSIM support and install eSIM profiles.

// Check if the device supports eSIM
// Does not require requesting entitlement approval from Apple (Manual checking)
bool isEsimSupported = await FlutterEsim.isEsimSupported();

// Check if the device supports eSIM
// Does not require requesting entitlement approval from Apple (Manual checking)
// You can add some devices that are not yet on the market that you want to check
List<String> newer = ['iPhone18,4', 'iPhone19,4']
bool isEsimSupported = await FlutterEsim.isEsimSupported(newer);

// Install an eSIM profile
// Require requesting entitlement approval from Apple
bool installedSuccessfully = await FlutterEsim.installEsimProfile(profileData);

// A piece of text containing simple steps for setting up eSIM.
bool textInstructions = await FlutterEsim.instructions();

eSIM Integration Guidelines for iOS #

Compatibility Check:

You can integrate eSIM functionality into your iOS app by following the steps below. Please note that the process involves requesting entitlement approval from Apple. https://developer.apple.com//contact/request/esim-access-entitlement

Steps:

Step 1: Request eSIM Entitlement

Using your developer account, submit a request for the eSIM entitlement through the Apple Developer portal.

Step 2: Approval Process

Apple will review and approve the entitlement request. You can check the status of the approval in your app's profile settings.

Step 3: Download Profiles

Download the App Development and Distribution profiles. Ensure that the eSIM entitlement is selected as part of Step #2 in the profile settings.

Step 4: Update Info.plist

Update your Info.plist file with the following keys and values:

<key>CarrierDescriptors</key>
<array>
  <dict>
    <key>GID1</key>
    <string>***</string>
    <key>GID2</key>
    <string>***</string>
    <key>MCC</key> <!-- Country Code -->
    <string>***</string>
    <key>MNC</key> <!-- Network Code -->
    <string>***</string>
  </dict>
</array>

Note: You can obtain GID1, GID2, MCC, and MNC information for eSIM compatibility from various sources:

  • Mobile Network Operators: Contact your mobile network operator for specific eSIM card details.
  • Online eSIM Providers: Many providers such as Truphone, Twilio, and Unlocator publish this information on their websites.
  • Device Manufacturers: Some manufacturers like Apple and Samsung provide details on their websites or in user manuals.
  • eSIM Databases: Websites like esimdb.com offer information on eSIM cards and associated codes. It's crucial to acknowledge that eSIM compatibility may vary based on the mobile network operator and device. Therefore, always refer to the specific provider or manufacturer for accurate and up-to-date information.

For more details, refer to the API Reference section.

Example #

Check out the example directory for a simple Flutter app demonstrating the usage of this plugin.

Contributing #

Feel free to contribute to this project!

License #

This project is licensed under the MIT License.

4
likes
120
pub points
62%
popularity

Publisher

verified publisherhiennv.com

A Flutter plugin for eSim, checker and installer. This repository hosts a Flutter plugin designed to check device compatibility with eSIM and facilitate the installation of eSIM profiles directly within a Flutter app. The plugin provides a seamless way for developers to determine if a device supports eSIM and, if so, allows them to integrate eSIM functionality into their applications.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (LICENSE)

Dependencies

flutter, plugin_platform_interface

More

Packages that depend on flutter_esim