繁体   English   中英

OMAPI支持的设备列表

[英]List of OMAPI supported devices

我正在使用Open Mobile API进行开发,但到目前为止还没有找到默认支持API的设备列表(默认情况下使用的是OEM ROM)。

我意识到,自API级别21以来,Android电话支持通过TelephonyManager直接通过基本和逻辑通道发送APDU。 但是我想了解运行API级别21之前的设备。

那么,有一个列表已经编译了内置支持的设备或有没有办法找到自己?

我不知道任何完整的清单。 但是,我们的报告Open Mobile API中有一个不太全面的内容:在Android设备上访问UICC,而在SEEK-for-Android Wiki中还有另一个(尽管现在没有维护)。

如果您可以访问您感兴趣的每个设备,您可以通过cource检查智能卡系统服务是否可用:

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
}

或者您可以通过向AndroidManifest.xml添加以下uses-library条目来创建一个声明需要Open Mobile API库的应用程序:

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

如果该应用程序可以安装在设备上,则表示该设备包含Open Mobile API库。

这也可能是获取更全面的受支持设备列表的一种方法:您可以创建此类应用并将其发布到Google Play上。 Google Play会根据必需属性设置为true <uses-library />条目进行过滤( android:required="true" ); 另请参阅Google Play上的 <uses-library>过滤器 这意味着,一旦您将此类应用程序上传到Google Play,您就应该能够获得一个基本匹配所有具有Open Mobile API库的设备的设备列表。

虽然@Michael Roland的回应仍然存在,但值得注意的是,自Android 9 Pie以来,Open Mobile API是Android的一部分

因此,对于API级别28及更高版本,默认情况下每部手机都有OMAPI,无需进行显式检查。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM