仅从特定活动中读取NFC标签

时间:2012-03-17 08:38:40

标签: android nfc

我首先告诉你我在做什么。我在序列中有三个活动,

活性1>>活性2>> Activity3。现在,当我点击标签时,我只想从Activity2读取NFC标签。当我在Activity1或Activity3中时,我的应用程序无法读取标记。我怎么想这个,有没有启用/禁用选项?任何属性设置为相同?我不想提示用户为此设置启用/禁用NFC。

2 个答案:

答案 0 :(得分:9)

作为前台应用程序,您的应用程序将始终有机会对触摸的标记做出第一反应。因此,您需要做的是为您的活动启用forgraoundDsipatch,在Activity1和Activity3上启用忽略该事件,并在Activity2上处理触摸的标记的信息。否则,如果你的应用程序不接受检测到的标签事件,android调度系统将继续搜索合适的应用程序以触发,当它找到它时,它将在你的应用程序顶部启动它。

有关Foreground Dispatch的更多信息,请查看此处:http://developer.android.com/guide/topics/nfc/advanced-nfc.html#foreground-dispatch

答案 1 :(得分:0)

仅针对您在Activity2上感兴趣的任何NFC意图设置intent-filter。有关示例,请参阅Android NFC Demo AndroidManifest.xml