我正在使用 NFC 制作应用程序。
每当检测到标签时,都会chooser dialog
弹出Complete action using
标题和可能的应用程序。
SingleTop
我用or掩盖了它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 标签并控制选择器对话框。