我首先告诉你我在做什么。我在序列中有三个活动,
活性1>>活性2>> Activity3。现在,当我点击标签时,我只想从Activity2读取NFC标签。当我在Activity1或Activity3中时,我的应用程序无法读取标记。我怎么想这个,有没有启用/禁用选项?任何属性设置为相同?我不想提示用户为此设置启用/禁用NFC。
答案 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。