Badtokenexception androidx - PullRequest
       6

Badtokenexception androidx

0 голосов
/ 23 октября 2018

Начал получать исключение BadTokenException на Android 7.1 с момента перехода на AndroidX.Предполагается, что это известная ошибка в 7.1 для Toast link , но я не уверен, потому что она началась только вскоре после того, как я перешел на androidx.

Проверил мою историю мерзавцев, и я не коснулся ни одного кода Toast перед переходом на androidx.У меня также не было исключений на 7.1 раньше.

Очевидно, я не могу воспроизвести его, и трассировка стека не имеет ссылки на мой код.Исключения накапливаются, и мне нужна помощь в исправлении этого.

android.view.WindowManager$BadTokenException: 

  at android.view.ViewRootImpl.setView (ViewRootImpl.java:689)

  at android.view.WindowManagerGlobal.addView (WindowManagerGlobal.java:342)

  at android.view.WindowManagerImpl.addView (WindowManagerImpl.java:94)

  at android.widget.Toast$TN.handleShow (Toast.java:511)

  at android.widget.Toast$TN$2.handleMessage (Toast.java:385)

  at android.os.Handler.dispatchMessage (Handler.java:102)

  at android.os.Looper.loop (Looper.java:163)

  at android.app.ActivityThread.main (ActivityThread.java:6228)

  at java.lang.reflect.Method.invoke (Native Method)

  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:886)

  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:776)

1 Ответ

0 голосов
/ 23 октября 2018

Тип TOAST не позволяет добавлять представление в Android 7.1.1, 7.1.2 с использованием

WindowManager.LayoutParams

Вместо этого можно использовать TYPE_SYSTEM_ALERT и использовать разрешение на оповещение в манифесте

 <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
...