2014-03-19 65 views
0

我有一个要求,其中我的应用程序处理NFC。避免在活动中检测到nfc标签

我已经在清单文件中声明了nfc。

<uses-feature 
    android:name="android.hardware.nfc" 
    android:required="true"/> 

现在,我的问题是,是否可以在特定活动中禁用nfc标记检测。

例如,我有10个活动,我不希望第5个活动检测nfc。可能吗? 我需要同样的建议。

回答

0

您无法真正停止设备检测NFC标签。但是,您可以做的是将您的活动设置为接收(然后忽略)所有NFC发现事件。

为此,您可以使用NfcAdapter的enableForegroundDispatch()方法将您的活动注册到NFC前台调度系统。这使您在接收所有其他意图过滤器的NFC事件时的当前活动优先顺序。有关如何进行此注册,请参阅Advanced NFC: Using the NFC Foreground Dispatch System

一旦您注册了前台调度系统,您的活动将通过其onNewIntent()方法(或作为未决意向结果取决于您如何注册)接收所有NFC意图。在那里,你可以简单地忽略这些事件。

+0

有帮助。谢谢 –