您的位置:首页 > 移动开发

android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an appli

2015-08-26 14:11 603 查看
08-26 13:55:00.231: E/AndroidRuntime(13561): FATAL EXCEPTION: main

08-26 13:55:00.231: E/AndroidRuntime(13561): Process: com.aaa.bbb.example, PID: 13561

08-26 13:55:00.231: E/AndroidRuntime(13561): android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application

08-26 13:55:00.231: E/AndroidRuntime(13561): at android.view.ViewRootImpl.setView(ViewRootImpl.java:592)

08-26 13:55:00.231: E/AndroidRuntime(13561): at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:272)

08-26 13:55:00.231: E/AndroidRuntime(13561): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:76)

08-26 13:55:00.231: E/AndroidRuntime(13561): at android.app.Dialog.show(Dialog.java:337)

08-26 13:55:00.231: E/AndroidRuntime(13561): at android.app.AlertDialog.show(AlertDialog.java:1367)

08-26 13:55:00.231: E/AndroidRuntime(13561): at com.aaa.bbb.core.impl.d.onStart(CommunitySDKImpl.java:547)

08-26 13:55:00.231: E/AndroidRuntime(13561): at com.aaa.bbb.core.nets.Request.c(Request.java:163)

08-26 13:55:00.231: E/AndroidRuntime(13561): at com.aaa.bbb.core.nets.a.b.run(AbsHttpStack.java:71)

08-26 13:55:00.231: E/AndroidRuntime(13561): at android.os.Handler.handleCallback(Handler.java:733)

08-26 13:55:00.231: E/AndroidRuntime(13561): at android.os.Handler.dispatchMessage(Handler.java:95)

08-26 13:55:00.231: E/AndroidRuntime(13561): at android.os.Looper.loop(Looper.java:136)

08-26 13:55:00.231: E/AndroidRuntime(13561): at android.app.ActivityThread.main(ActivityThread.java:5054)

08-26 13:55:00.231: E/AndroidRuntime(13561): at java.lang.reflect.Method.invoke(Native Method)

08-26 13:55:00.231: E/AndroidRuntime(13561): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)

08-26 13:55:00.231: E/AndroidRuntime(13561): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)

android 中每个窗口都有一个token,和我们通常意义上说的token是一个意思,就是每个窗口都有一个令牌

这个问题的原因是:对话框渲染是需要有一个父窗口的,比如activity,fragment。这里要弹出一个对话框,传递给对话框的context是application,application是没有窗口,没有token的,导致这个对话框没有办法渲染。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: