is not valid; is your activity running?异常
2017-04-19 11:32
281 查看
异常内容:
android.view.WindowManager$BadTokenException: Unable to add window – token android.os.BinderProxy@412ae140 is not valid; is your activity running?
报错位置:
dialog.show();
异常产生:
加载Activity时,有个弹窗,在弹窗加载成功之前按下back返回键,应用程序闪退。
原因:
在Activity生命周期未完成挂载之前,又加载了其它的Activity,比如AlertDialog。在这个时候调用系统的back,或者home键,会执行onStop方法。
如果弹窗加载未完成就会造成崩溃现象。
解决办法:
1、如果弹窗获取的数据是从服务器获取的,那就在请求的时候,根据信息判断是否要加载弹窗。
这样在initView中初始化数据的时候,会先执行网络请求这一部分。
这样的结果是,如果网络状态不好或者请求失败,那么弹窗就不会出现。
以不影响其他方法的执行
2、使用try catch 捕获异常
3、在弹窗显示之前加入判断
4、设置父的上下文
android.view.WindowManager$BadTokenException: Unable to add window – token android.os.BinderProxy@412ae140 is not valid; is your activity running?
报错位置:
dialog.show();
异常产生:
加载Activity时,有个弹窗,在弹窗加载成功之前按下back返回键,应用程序闪退。
原因:
在Activity生命周期未完成挂载之前,又加载了其它的Activity,比如AlertDialog。在这个时候调用系统的back,或者home键,会执行onStop方法。
如果弹窗加载未完成就会造成崩溃现象。
解决办法:
1、如果弹窗获取的数据是从服务器获取的,那就在请求的时候,根据信息判断是否要加载弹窗。
这样在initView中初始化数据的时候,会先执行网络请求这一部分。
这样的结果是,如果网络状态不好或者请求失败,那么弹窗就不会出现。
以不影响其他方法的执行
ShopRequest.getDialogMS(new ApiCallBack2<EDUDialogModel>() { @Override public void onMsgFailure(String errMsg) { // TODO Auto-generated method stub super.onMsgFailure(errMsg); } public void onMsgSuccess(EDUDialogModel param) { if (param.message.toString().equals("")) { } else { showWarningDialog(param.message); } }; });
2、使用try catch 捕获异常
try { createAlertDialog(msg); } catch (Exception e) { }
3、在弹窗显示之前加入判断
if(!this.isFinishing() && !warningDialog .isShowing()) warningDialog .show();
4、设置父的上下文
warningDialog = new AlertDialog.Builder(getParent()).create(); View view = View.inflate(getParent(), R.layout.warning_dialog, null);
相关文章推荐
- Activity has leaked window that was originally added -界面退出时未关闭对话框异常 android.view.WindowManager$BadTokenException: Unable to add window -- token null is not valid; is your activity running? -
- Anroid 异常:is not valid; is your activity running?
- Anroid 异常:Unable to add window 。。is not valid; is your activity running?
- Anroid 异常:Unable to add window …… is not valid; is your activity running?
- Anroid 异常:is not valid; is your activity running?
- Anroid 异常:is not valid; is your activity running?
- Anroid 异常:is not valid; is your activity running?
- popupwindow使用之异常-Unable to add window -- token null is not valid; is your activity running?
- 运行异常:android.view.WindowManager$BadTokenException:is not valid; is your activity running?
- Anroid 异常:is not valid; is your activity running?
- Android运行异常一:token android.os.BinderProxy@438e7108 is not valid; is your activity running?
- Anroid 异常:is not valid; is your activity running?
- Anroid 异常:is not valid; is your activity running?
- Anroid 异常:Unable to add window …… is not valid; is your activity running?
- Anroid 异常:is not valid; is your activity running?
- unable to add window -- token null is not valid; is your activity running 错误解决办法
- Anroid 异常:is not valid; is your activity runnin
- Unable to add window is not valid; is your activity running?
- Unable to add window -- token null is not valid; is your activity running?错误及其修改方法
- token null is not valid; is your activity running?解决方案