我实际上是在尝试使用我的 android 智能手机(在 4.4 上)模拟 NFC 卡,并将此信息发送到我的 NFC 阅读器,女巫连接到我的 Java 应用程序。目标是获取唯一 ID,但我的 NFC 阅读器不支持点对点。
因此https://developer.android.com/guide/topics/connectivity/nfc/hce.html上的示例不起作用。
感谢你的协助
我实际上是在尝试使用我的 android 智能手机(在 4.4 上)模拟 NFC 卡,并将此信息发送到我的 NFC 阅读器,女巫连接到我的 Java 应用程序。目标是获取唯一 ID,但我的 NFC 阅读器不支持点对点。
因此https://developer.android.com/guide/topics/connectivity/nfc/hce.html上的示例不起作用。
感谢你的协助
点对点模式和 Android HCE 是两个不同的东西。为了访问带有 Android HCE 的设备,您的阅读器只需要支持非接触式智能卡(即 ISO 14443-4 + ISO 7816-4)。如果您的阅读器使用 Java SmartcardIO API 连接到您的 Java 应用程序,则很可能是这种情况。
关于唯一标识符:对于 Android HCE,在 ISO 14443 协议(例如 UID、PUPI)的防冲突序列期间使用的序列号是随机的(通常每个协议激活都有一个新值)。因此,通过 Android HCE 获得唯一标识符的唯一方法是在您的 HCE 应用程序中定义这样的标识符,并使用自定义 ISO 7816-4 命令(-sequence)在您的应用程序中查询此 ID。