我正在编写一个应该检测nfc标签并自动启动的应用程序.
我已经通过使用TECH_DISCOVERED过滤器成功做到了这一点,但我认为更好的方法是使用NDEF_DISCOVERED.
我已经将意图过滤器添加到清单中,但是它不起作用.
这是我的TECH_DISCOVERED的清单代码,可以正常工作:
android:resource="@xml/nfc_tech_filter" />
当我想尝试NDEF_DISCOVERED时,我尝试:
对于标签,我使用市场上的NFC TagInfo应用将“ Mifare classic 1k”标签写为“ Smart Poster”.
我究竟做错了什么?
或者,还有什么其他方法可以使我的应用启动而不显示活动选择对话框?
谢谢,
伊朗
解决方法:
您正在过滤的是文本/纯文本,而不是智能海报的URI. Android将智能海报转换为URI,然后您必须过滤该URI.如果检查启动的意图,则可以在logcat中看到URI.对于像/file这样的URI,请执行以下操作:
android:host=""
android:pathPrefix="/file" />
有关如何解析NDEF消息的更多信息,请参见NFC开发指南.请阅读整个文档,以完全了解如何针对正确的意图进行过滤:/guide/topics/nfc/nfc.html
标签:nfc,android
来源: https://codeday.me/bug/1201/2083934.html
如果觉得《android nfc 启动流程 android-NFC-如何使用NDEF_DISCOVERED启动应用程序》对你有帮助,请点赞、收藏,并留下你的观点哦!