我需要制作一个能够通过 NFC 读取 Google Pay Pass Activity 门票的应用程序。但我找不到任何方法来处理它。我在 Google Play 中看到了一些顶级应用程序,例如 PassWallet 和 Passes,它们可以与此类 Activity 门票配合使用。
但他们都只能通过扫描条形码添加新票,而不能通过 NFC 触摸。我尝试在 Google Pay 应用中打开票证并通过另一部手机的 NFC 读卡器读取它,但没有收到有关票证的任何信息,即使我打开所需的卡,我也总是收到默认信用卡信息。
所以我的问题是,是否可以通过另一部手机的 NFC 读取 Google Pay Pass Activity 门票,如下图所示?
如果是,您能否与我分享一些有关如何执行此操作的示例代码?
最佳答案
是的,这是可能的。
对于 Google Pay 发行的通行证,该通行证必须保存到 google pay在移动设备上并且通过类的必须设置为 enable smart tap并且通行证本身必须具有 smartTapRedemptionValue
field设置如下:
{
...
"smartTapRedemptionValue": "Value to Transmit",
...
}
充当终端(读取通行证)的设备必须实现 Smart Tap Protocol并向移动设备提供收集者 ID 和签名有效负载,以验证终端并发送可兑换的通行证。
passs 类还有 field redemptionIssuers
可以指定哪个终端的collector id可以兑换。
为了落实Smart Tap Protocol您可以通过 form 请求访问受 NDA 保护的文档其中详细介绍了如何配置充当终端的设备来读取通行证。
还有已经认证支持的终端providers可用。
关于java - 无法通过其他手机的 NFC 读卡器读取 Google Pay Pass Activity 卡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61997792/