mic*_*ith 5 android launch android-studio
我在应用程序启动时独家崩溃,仅在模拟器和调试中
模拟器和运行:好的
设备和运行:好的
设备和调试:好的
模拟器和调试:CRASH!
看起来Android正试图在发布时做一个Toast,因为我没有很多Toast并且在所有这些上添加了断点,我可以排除它是我的一个.
有没有办法找出Android试图显示的消息以及它所指的Activity?在崩溃发生之前,Logcat没有显示任何异常.
android.view.WindowManager$BadTokenException: Unable to add window -- token android.os.BinderProxy@e4f4f2b is not valid; is your activity running?
at android.view.ViewRootImpl.setView(ViewRootImpl.java:679)
at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:342)
at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:93)
at android.widget.Toast$TN.handleShow(Toast.java:459)
at android.widget.Toast$TN$2.handleMessage(Toast.java:342)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6119)
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)
Run Code Online (Sandbox Code Playgroud)
这种情况很可能发生,因为您试图在后台线程执行后显示一个对话框,而活动正在被销毁。
这对我有用:
if(!((Activity) context).isFinishing())
{
//show dialog
}
Run Code Online (Sandbox Code Playgroud)
它对我来说非常有效,多年来我一直在使用这种做法。
| 归档时间: |
|
| 查看次数: |
3735 次 |
| 最近记录: |