【问题标题】:Host-based Card Emulation - Trigger a reader app when HCE is read on reader device基于主机的卡仿真 - 在读卡器设备上读取 HCE 时触发读卡器应用
【发布时间】:2015-10-14 17:46:50
【问题描述】:

NFC 标签可以触发手机上可用的 NFC 阅读器应用,但 HCE 不会触发任何阅读器应用。但是,如果我首先打开阅读器应用程序,则它可以正常工作,因此可以读取 HCE 模拟标签。

我需要一个 HCE 可以打开或提示选择阅读器应用的解决方案。

HCE 可以做到这一点吗?为什么安卓检测到 HCE 设备时不提示打开 NFC 阅读器应用?

【问题讨论】:

    标签: android nfc hce android-beam


    【解决方案1】:

    不可以,一台 Android 设备上的 HCE 应用不能用于触发(启动)另一台 Android 设备上的阅读器应用。原因是 Android 设备也实现了点对点模式。因此,默认情况下,两台 Android 设备会自动以点对点模式进行通信,而阅读器端将看不到 HCE 模拟标签。

    只有在使用 reader-mode API 禁用对等模式的读取器端启动读取器应用时,两个设备才会以读取器/写入器模式 + 卡模拟模式开始通信。因此,只有这样 HCE 模拟标签才对阅读器方可见。

    请注意,从设置菜单中禁用 Beam 不会对此有任何改变,因为即使 Beam(目前 Android 设备在点对点模式之上使用的唯一应用协议),点对点模式仍保持启用状态已禁用。

    【讨论】:

      【解决方案2】:

      首先,您必须确保使用 Kitkat 版本的 android 以获得 HCE 支持。接下来,由于 HCE 将您的应用程序 ID 路由到 CPU 而不是 eSE 或 UICC Sim 卡,因此任何依赖于 eSE 或 UICC sim 卡的应用程序都无法与 HCE 一起使用。因此,您必须使用 HCE 支持的应用程序才能被读者识别。接下来,阅读器应发送应用程序 ID,以便您手机上安装的任何 HCE 应用程序都能够响应它。

      【讨论】:

      • 它有帮助,因为我使用的是没有 SE 的 HCE,所以设备不能被视为常规的 nfc 标签。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-19
      • 2013-12-09
      相关资源
      最近更新 更多