List of OMAPI supported devices

前端 未结 2 1310
礼貌的吻别
礼貌的吻别 2020-12-16 08:21

I\'m developing with the Open Mobile API but so far haven\'t found a list of devices that support the API by default (by default being using the OEM ROM).

I realise

相关标签:
2条回答
  • 2020-12-16 08:46

    I'm not aware of any complete list. However, there is a not so comprehensive one in our report Open Mobile API: Accessing the UICC on Android Devices and there is another one (though now unmaintained) in the SEEK-for-Android Wiki.

    If you have access to each of the devices you are interested in, you could, of cource, check if the smartcard system service is available on them:

    final String SMARTCARD_SERVICE_PACKAGE = "org.simalliance.openmobileapi.service";
    try {
        PackageInfo pi = getPackageManager().getPackageInfo(SMARTCARD_SERVICE_PACKAGE, 0);
        // smartcard service present
    } catch (PackageManager.NameNotFoundException ex) {
        // smartcard service NOT present
    }
    

    Or you could simply create an app that declares to require the Open Mobile API library by adding the following uses-library entry to its AndroidManifest.xml:

    <uses-library android:name="org.simalliance.openmobileapi" android:required="true" />
    

    If that app can be installed on a device, this indicates that the device contains the Open Mobile API library.

    This may also be a way to obtain a more comprehensive list of supported devices: You could create such an app and publish it on Google Play. Google Play will filter based on <uses-library /> entries that have the required attribute set to true (android:required="true"); see also <uses-library> and Filters on Google Play. This means, that once you uploaded such an app to Google Play, you should be able to get a list of suuported devices that essentially matches all devices that have the Open Mobile API library available on them.

    0 讨论(0)
  • 2020-12-16 08:47

    While @Michael Roland response still stands, it's also worth noting that since Android 9 Pie, Open Mobile API is part of the Android.

    So for API level 28 and higher, every phone has OMAPI by default and there is no need for explicit check.

    0 讨论(0)
提交回复
热议问题