이것이 이전에 여기에서 논의되었을 수도 있습니다. 그러나 getApplicationContext()
을 사용하여 Dialog
을 표시하면 어떻게되는지 혼란 스럽습니다.getApplicationContext()를 사용하여 대화 상자를 표시합니다. - BadTokenException : 창을 추가 할 수 없습니다.
AlertDialog.Builder
을 만들기 위해 getApplicationContext()
을 사용하는 응용 프로그램이 있으며 대화 상자에이 표시되면 응용 프로그램이 충돌합니다. 하지만 SomeActivity.this 컨텍스트를 사용하면 잘 작동합니다.
참고 :이 앱은 현재 잠시 Play 스토어에 있었고 이전에 작동했지만 어떤 Android 버전이 다운되었는지 확실하지 않습니다.
충돌 스택 추적
android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application
at android.view.ViewRootImpl.setView(ViewRootImpl.java:540)
at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:259)
at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:69)
at android.app.Dialog.show(Dialog.java:286)
at android.app.AlertDialog$Builder.show(AlertDialog.java:951)