패키지, 저장소 및 앱 카테고리 검색

패키지 상세v0.0.4

esim

eSIM 호환성 확인을 위한 Flutter 플러그인입니다.

AndroidiOSWebmacOSWindowsLinux
30일 다운로드
45
좋아요
38
Pub 점수
115

패키지 설치

flutter pub add esim

패키지 개요

공개 정보를 바탕으로 생성한 선택 가이드입니다.

esim 패키지는 안드로이드 및 iOS 기기에서 eSIM 호환성을 확인하기 위해 설계된 플러터 플러그인입니다. 개발자들이 기기가 eSIM 기능을 지원하는지 여부를 간단히 확인할 수 있도록 하여 앱이 하드웨어 기능에 따라 기능을 조정할 수 있게 합니다. 이 플러그인은 웹, macOS, Windows, Linux 등 여러 플랫폼과 호환되지만 주로 모바일 운영 체제에서 사용됩니다. 플랫폼 채널을 통해 네이티브 API를 활용하여 정확한 장치 정보를 제공합니다. 이 도구는 셀룰러 연결에 의존하거나 eSIM 프로비저닝 서비스를 제공하는 애플리케이션에 적합합니다.

사용 사례

  • 런타임 시 장치 eSIM 지원 확인
  • 앱에서 eSIM 전용 기능 사용
  • eSIM 호환 장치를 위한 사용자 가이드 제공
  • 모바일 앱에서 eSIM 설정 흐름 통합
  • 운영자 구성 도구 지원

주요 기능

  • 크로스 플랫폼 호환성
  • eSIM 상태 확인을 위한 간단한 API
  • Android 및 iOS를 네이티브로 지원
  • 기기의 eSIM 기능 상태를 반환합니다
  • 웹, macOS, Windows 및 Linux에서 작동합니다

적합한 대상

  • 모바일 앱 개발자가 연결 기능을 구축하고 있습니다
  • eSIM 프로비전이 필요한 앱
  • 다중 플랫폼 배포를 목표로 하는 개발자
  • 운영자 또는 장치 호환성 평가를 위한 도구
  • 디지털 SIM 관리에 집중하는 앱

고려 사항

  • 모바일이 아닌 플랫폼에서 기능 제한
  • eSIM 사용 가능 여부는 기기 제조업체에 따라 다릅니다
  • 런타임 eSIM 활성화 지원 없음
  • 플랫폼별 동작은 다를 수 있습니다
  • Android 및 iOS에서 적절한 권한이 필요합니다

원본 README

연결된 소스 저장소의 README 원문 스냅샷입니다. 최신 내용은 저장소에서 확인하세요.

flutter_esim

This project contains the steps and information needed to check if your iOS device is compatible with eSIM technology. eSIM, or Embedded SIM, is a new type of SIM card that is embedded within the device itself, rather than being a physical card that can be inserted and removed. This allows for more flexibility in activating and switching between different mobile plans.

Compatibility Check:

You can integrate eSIM functionality into your iOS app, please follow these steps:

Step 1:

Request for eSIM entitlement using your developer account.

Step 2:

Apple will approve the entitlement after some time. You can check if Apple has approved the entitlement from your app profile setting

Step 3:

Download the App Dev and Distribution profile (By selecting eSIM entitlement as Step #2).

Step 4:

Update your Info.plist with below keys and value

<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>

You can find GID1, GID2, MCC, and MNC for eSIM compatibility from the following sources:

Mobile network operators -

You can contact your mobile network operator and ask for the GID1, GID2, MCC, and MNC for your specific eSIM card. Online eSIM providers - Many online eSIM providers, such as Truphone, Twilio, and Unlocator, will provide the GID1, GID2, MCC, and MNC for their eSIM cards on their websites. Device manufacturers - Some device manufacturers, such as Apple and Samsung, will provide the GID1, GID2, MCC, and MNC for their eSIM-compatible devices on their website or in the device's user manual. eSIM databases - There are online databases, such as esimdb.com, that provide information on eSIM cards and their GID1, GID2, MCC, and MNC.

It is important to note that eSIM compatibility can vary depending on the mobile network operator and device, so it is important to check with the specific provider or manufacturer for the most accurate information.

Step 5:

Add eSIM compatibility code to AppDelegate file.

main.dart
class MyApp extends StatefulWidget {
  @override
  MyAppState createState() => MyAppState();
}

class _MyAppState extends State<MyApp> {
  int isEsimCompatible = 0;

  // Platform messages are asynchronous, so we initialize in an async method.
  Future<void> checkEsimCompatibility() async {
    // Platform messages may fail, so we use a try/catch PlatformException.
    try {
      isEsimCompatible = await Esim.isEsim();
    } on PlatformException {
      debugPrint('Failed to get esim compatibility.');
    }
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: const Text('eSIM Compatibility example'),
        ),
        body: Center(
          child: ElevatedButton(
            onPressed: () async {
              await checkEsimCompatibility();
              Fluttertoast.showToast(
                  msg: isEsimCompatible == 1
                      ? "This device supports eSIM "
                      : 'This device does not supports eSIM',
                  toastLength: Toast.LENGTH_LONG,
                  gravity: ToastGravity.BOTTOM,
                  timeInSecForIosWeb: 1,
                  backgroundColor: Colors.grey,
                  textColor: Colors.white,
                  fontSize: 16.0);
            },
            child: const Text("Check eSIM compatibility"),
          ),
        ),
      ),
    );
  }
}

Upcoming features

  • eSIM compatibility for Android
  • eSIM installation for iOS and Android

Conclusion

With these steps, you can now check if your iOS device is compatible with eSIM, activate eSIM and switch between eSIM and physical SIM.

Referral link:

https://developer.apple.com/documentation/coretelephony?changes=latest_minor

카테고리

의존성

의존성 목록 1 개

  • plugin_platform_interface^2.0.2

소스 저장소

이 패키지를 사용하는 프로젝트

아직 데이터가 없습니다.