我在Android编程方面相当新,并计划使用NFC在优惠券系统上工作。我已阅读过关于通过Android编程阅读和编写NFC标签的知识,并了解了意图过滤器。
我的问题是,是否可以只编写一个标签,以便它只运行我的应用程序,而不是任何其他应用程序。话虽如此,是否有可能使其不被任何其他应用程序读取?我对标签的类型非常模糊,希望有人能澄清这个问题。
答案 0 :(得分:2)
您可以使用特定的mime类型甚至标记类型标记标记,并以使应用程序获取这些标记的方式编写intent过滤器。但是其他应用程序也可以复制您的意图过滤器并获得标签通知。
你可以尝试加密标签上的数据,这样只有你的应用程序可以读取它,但即使这样也远非完美无缺。有人可以轻松解码你的APK密钥。您也可以encrypt your APK,但似乎只支持Jelly Bean及以上版本。
这完全取决于您愿意隐藏标签内容的时间和精力,而不是您的目标受众愿意投入多少时间和精力来破解它。
答案 1 :(得分:0)
当您在代码上添加NDEF消息时(请参阅Ndef),您可以在Android Application Record的末尾添加NdefMessage。这将确保只启动您的应用。如果设备上未安装该应用,则会将用户重定向到Play商店应用以进行安装(如果该应用可用)。
答案 2 :(得分:0)
我建议你使用
您可能也有兴趣看到Signature record这样的事情。