【发布时间】:2019-09-25 03:15:52
【问题描述】:
我正在使用 NFC 制作应用程序。
只要检测到标签,chooser dialog 就会不断弹出Complete action using 标题和可能的应用程序。
我使用SingleTop 或SingleTask 来掩盖它。但是,它并不总是有效。
似乎我无法真正触摸在检测到 NFC 标签后发生的事情,因为它在系统级别上工作。不仅在我的应用程序中。它无处不在。
我找到了一些可以自定义选择器对话框的方法,但不适用于 NFC,因为在我的应用中,我从未实现过任何关于 createChooser() 的内容。
我尝试为这样的选择器添加更多代码
val intent = Intent(this, MainActivity::class.java)
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP)
// start
val list = arrayListOf<String>()
list.add("me@example.com")
intent.putExtra(Intent.EXTRA_EMAIL, list)
intent.putExtra(Intent.EXTRA_SUBJECT, "Hi")
intent.putExtra(Intent.EXTRA_TEXT, "Hi,This is Test")
pendingIntent = PendingIntent.getActivity(this, 0, Intent.createChooser(intent, "Yaho"), 0)
我得到了同样的结果。我猜是因为它是在系统级别控制的。
最好的解决方案是避免在某些特定活动或片段中检测 NFC 标签并控制选择器对话框。
【问题讨论】:
标签: android android-intent nfc android-pendingintent android-intent-chooser