Как отключить диалог выбора в Android? - PullRequest
0 голосов
/ 25 сентября 2019

Я создаю приложение с использованием NFC.

Всякий раз, когда тег обнаруживается, chooser dialog продолжает всплывать с Complete action using заголовком и возможными приложениями.

Я покрывал егоиспользуя SingleTop или SingleTask.Тем не менее, он не работает все время.

Кажется, что я не могу по-настоящему коснуться того, что происходит после обнаружения тега NFC, потому что он работает на системном уровне.Не только в моем приложении.Он появляется везде.

Я нашел несколько способов настроить диалог выбора, однако, не для NFC, потому что в моем приложении я никогда не реализовывал ничего о createChooser().

Я попытался добавить что-то еще код для chooser, как это

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 в некоторых конкретных действиях или фрагментах и ​​управлять диалоговым окном выбора.

1 Ответ

0 голосов
/ 25 сентября 2019

Использование ForgroundDispatch решает проблему.

...