DESCRIPTION: android.view.WindowManager$BadTokenException: Unable to add window -- token android.os.BinderProxy@424ce168 is not valid; is your activity running?
at android.view.ViewRootImpl.setView(ViewRootImpl.java:646)
at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:248)
at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:69)
at android.app.Dialog.show(Dialog.java:281)
at android.app.Activity.showDialog(Activity.java:3135)
at android.app.Activity.showDialog(Activity.java:3085)
at com.zl.upgrade.activity.s.run(Unknown Source)
at android.os.Handler.handleCallback(Handler.java:725)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:153)
at android.app.ActivityThread.main(ActivityThread.java:5320)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
at dalvik.system.NativeStart.main(Native Method)
暫不明原因!
臨時解決方案:
在onCreateDialog()中創建dialog的時候,傳入最外層的ActivityGroup
20131015
初步原因:
當請求服務器的時候,後臺線程返回數據時,調用了activity的showDialog(),但是這個時候恰巧
activity已經被finish掉了,導致報錯
Unable to add window -- token android.os.BinderProxy@424ce168 is not valid; is your activity running?
解決辦法:在showDialog之前 判斷activity是否被finish掉, activity.isFinishing()
參考文章: