如何在 Android 上使用 javax.smartcardio 包?

Posted

技术标签:

【中文标题】如何在 Android 上使用 javax.smartcardio 包?【英文标题】:How to use javax.smartcardio package on Android? 【发布时间】:2017-11-01 06:23:04 【问题描述】:

我用 smartcardio 编写了 java 控制台应用程序。一切都很完美。现在我想在 android 中使用这个库。据我所知,Android 不支持 smartcardio。我在谷歌搜索。如果有人知道我如何在 Android 中使用这个库,或者有什么替代方法? 谢谢

【问题讨论】:

你没有。 Java 智能卡将如何与 Android 设备进行(物理)通信? 我想在我的自定义 Android 设备中发送 APDU 命令,witch 仅支持读卡器,自定义中文设备@Morrison Chang 请说明您是使用定制硬件还是购买的外部设备与 Java SmartCard 进行通信? 我正在使用自定义硬件@Morrison Chang 那么自定义 ROM 还是使用 Android Things 低级 API 与硬件通信? 【参考方案1】:

尝试使用这个alternative。代码看起来非常相似。 您将需要克隆项目。编译罐子。并放入Android项目lib目录。

【讨论】:

你测试过或者用过吗? @Mykola Tychyna 我不认为,您的解决方案适用于 android,因为它是 winscard.dll 的包装器,并且在 android 上不存在。【参考方案2】:

您不能在 Android 中使用 smartcardio 库,因为您已经知道了。如果您打算以非接触式界面与智能卡进行通信,我建议您查看以下库 https://developer.android.com/reference/android/nfc/package-summary.html https://developer.android.com/guide/topics/connectivity/nfc/advanced-nfc.html

如果您打算与 SE 交流,您可以查看 https://github.com/seek-for-android/pool/wiki/UsingSmartCardAPI

【讨论】:

【参考方案3】:

如果您想使用 ccid 智能卡读卡器,您必须找到适用于 android 的 ccid 库。像 acs 这样的公司已经发布了 android 库。

对于非接触式支持,您必须使用在 android (android.nfc) 中定义的特定包。 也许这个链接可以帮助你。 http://www.codexpedia.com/android/android-nfc-read-and-write-example/

祝你好运。

【讨论】:

以上是关于如何在 Android 上使用 javax.smartcardio 包?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Android 相机上使用意图添加功能裁剪图像?

如何在 Android 上使用 QOpenGLWidget?

如何在Android上打破通知的内容

如何在 Android 上使用嵌入式 Flash?

如何在 java (Android) 上使用字符串

如何在 Android 上使用硬件加速视频解码?