android – 当读取NDEF标签时,它在“NFC服务”而不是应用程序中显示的内容
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了android – 当读取NDEF标签时,它在“NFC服务”而不是应用程序中显示的内容,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1381字,纯文字阅读大概需要2分钟。
内容图文
![android – 当读取NDEF标签时,它在“NFC服务”而不是应用程序中显示的内容](/upload/InfoBanner/zyjiaocheng/707/1fa6273a86584b839e4ab2b0678023e5.jpg)
我正在尝试使用ADT从Android应用程序中读取NDEF标记.
代码与this教程中的代码完全相同.
它正确显示的内容,但它不是打开我的应用程序,它显示在我的应用程序(相同的用户界面)的克隆,它被称为“NFC服务”与蓝牙图标.
问题是:如果我已经打开了应用程序,那么在阅读之后,它会克隆自己以及我在“NFC服务”克隆上完成阅读后所做的一切.
这是多任务菜单显示的内容:
其中“Servizio NFC”在“NFC服务”中的翻译
解决方法:
我无法评论应用程序在历史记录中显示为带有蓝牙图标的“NFC服务”的问题 – 这显然看起来像一个错误.
但是,如果您希望自己的应用在前景中接收NFC事件,我强烈建议您使用foreground dispatch或reader mode API(阅读器模式是Android 4.4中的新功能).
为了使用前台调度,您将创建一个挂起的意图,如下所示:
PendingIntent pendingIntent = PendingIntent.getActivity(
this,
0,
new Intent(this, getClass()).addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP),
0);
然后,在您的activity的onResume()方法中,您将启用前景调度,如下所示:
NfcAdapter nfcAdapter = NfcAdapter.getDefaultAdapter(this);
nfcAdapter.enableForegroundDispatch(this, pendingIntent, null, null);
请注意,如果您不希望活动接收每个发现的标记,则可以定义意图过滤器或标记技术列表,并将它们传递给enableForegroundDispatch()方法.
然后,您将收到通过活动的onNewIntent()方法通知您有关已发现标记的意图:
public void onNewIntent(Intent intent) {
...
}
请记住,您必须在活动的onPause()方法中禁用前台调度:
NfcAdapter nfcAdapter = NfcAdapter.getDefaultAdapter(this);
nfcAdapter.disableForegroundDispatch(this);
内容总结
以上是互联网集市为您收集整理的android – 当读取NDEF标签时,它在“NFC服务”而不是应用程序中显示的内容全部内容,希望文章能够帮你解决android – 当读取NDEF标签时,它在“NFC服务”而不是应用程序中显示的内容所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。