仅当 activity 已启动时才接收 NFC 意图

Recieve an NFC intents only when activity already started

我正在尝试构建一个使用 NFC 的应用程序。当用户启动某个 activity 时,系统会提示他将 NFC 标签靠近 reader。

我已经把文档弄红了。我知道我必须创建意图过滤器以在接近标签时接收意图。

问题是我希望我的 activity 仅在可见时接收意图 我不希望每次接近标签时都启动它。例如 app NFC tools 就是这样工作的。

你可以使用前台调度系统来完成:http://developer.android.com/guide/topics/connectivity/nfc/advanced-nfc.html#foreground-dispatch

此外,从您的清单中删除您的 Intent 过滤器,它将停止启动您的应用程序

在您的 onResume 方法中注册您的接收器,并在您的 onPause 方法中注销它,这样您就只会在 activity 处于活动状态时接收意图。