使用场景:
在activity中使用一个dialog 中嵌套一个dialog的时候会出现这个问题
报错log日志:
android.view.WindowManager$BadTokenException: Unable to add window -- token null is not valid; is your activity running?
at android.view.ViewRootImpl.setView(ViewRootImpl.java:791)
at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:356)
at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:94)
.......
可能产生错误的原因:
- context为null导致的
- 在销毁Activity时调用了Dialog.show()
大致解决思路
- 检查dialog的上下文对象(context),建议最后使用application的上下文对象
- 在调用的地方判断一下是否销毁Activity.isFinishing()