【发布时间】:2017-08-14 10:57:27
【问题描述】:
我正在编写一个 NFC 支付应用程序。
我知道无论应用程序是否打开,我都可以使用 HCE 进行 NFC 交易。但我不知道是否有必要让应用程序在后台运行。
支付应用需要在后台运行吗?
【问题讨论】:
标签: android nfc android-lifecycle apdu hce
我正在编写一个 NFC 支付应用程序。
我知道无论应用程序是否打开,我都可以使用 HCE 进行 NFC 交易。但我不知道是否有必要让应用程序在后台运行。
支付应用需要在后台运行吗?
【问题讨论】:
标签: android nfc android-lifecycle apdu hce
是的,您的应用需要在 HCE 事务期间在后台运行。
不过,Android 会自动处理这个问题。您需要做的就是在您的应用清单中注册您的 HostApduService 类实现及其 AID 列表。选择任何已声明的 AID 后,Android 将自动查找相应的 HostApduService 实现,如果尚未启动,则启动(实际绑定)它,并将 APDU 传递给它。
请注意,您甚至可以拥有一个根本没有任何活动的支付应用程序,因此无需启动应用程序的任何活动并将其隐藏在后台以使 HCE 工作。
【讨论】: