0

我有一个没有 NFC 的设备。此设备也不支持 Open Mobile API。我需要访问该设备上的 SIM 小程序。

现在我想知道是否可以添加该功能...如果我有 Open Mobile API 库的副本,如果通过 ADB 将该 Open Mobile API 库推送到我的设备,它会起作用吗?然后我可以用我的 SIM 小程序交换 APDU 吗?

4

1 回答 1

1

不,那行不通。Open Mobile API只是 Open Mobile API 服务(“SmartcardService”)的接口。因此,该库仅帮助您的应用通过标准化接口(= Open Mobile API)与服务进行通信。如果您尝试在没有 SmartcardService 的设备上使用该库,则该库将无法绑定到该服务,因此 API 调用将失败。

你可以做什么

  1. 从 Android 5(API 级别 21)开始,TelephonyManager提供了一个 API,用于与 SIM/UICC 上的应用程序交换 APDU 命令。请参阅iccOpenLogicalChanneliccTransmitApduBasicChanneliccTransmitApduLogicalChannel等。就像使用 Open Mobile API 一样,您的应用程序当然需要具有访问该 API 的权限。
  2. 如果您的设备的 SmartcardService 实现还实现了通过 RIL 访问 SIM/UICC,您可以将该服务与 Open Mobile API 库一起安装以访问 SIM/UICC。请参阅我的报告Open Mobile API: Accessing the UICC on Android Devices
于 2016-06-23T06:44:47.323 回答