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

现在项目遇到这样一个问题,HTML5网页弹出一个Alert对话框,该文章已经被删除,Android这边需要监听用户点击确定按钮,然后返回前一个列表页面进行页面刷新删除被后台删除的的数据,具体做法如下

       setting.setJavaScriptEnabled(true);//支持jssetting.setJavaScriptCanOpenWindowsAutomatically(true);        webview.setWebChromeClient(new WebChromeClient() {            @Override            public boolean onJsAlert(WebView view, String url, String message,                                     final JsResult result) {                Log.i("aaa", "onJsConfirm" + "," + "url: " + url);                AlertDialog.Builder builder = new AlertDialog.Builder(ArticalDetailAct.this);                builder.setMessage(message)                        .setNeutralButton("确定", new DialogInterface.OnClickListener() {                            @Override                            public void onClick(DialogInterface arg0, int arg1) {                                arg0.dismiss();                                finish();                            }                        }).show();                result.cancel();                return true;            }            @Override            public boolean onJsConfirm(WebView view, String url,                                       String message, final JsResult result) {                // TODO Auto-generated method stub                Log.i("aaa", "onJsConfirm" + "," + "url: " + url);////                DialogUtils.dialogBuilder(mContext, "温馨提示", message,//                        new DialogCallBack() {////                            @Override//                            public void onCompate() {//                                Log.i(TAG, "onJsConfirm,onCompate");//                                result.confirm();//                            }////                            @Override//                            public void onCancel() {//                                Log.i(TAG, "onJsConfirm,onCancel");//                                result.cancel();//                            }//                        });                return true;            }        });



如果大家出现如下问题android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an appli

导致报这个错是在于new AlertDialog.Builder(mcontext),虽然这里的参数是AlertDialog.Builder(Context context)但我们不能使用getApplicationContext()获得的Context,而必须使用Activity,因为只有一个Activity才能添加一个窗体。 
解决方法:将new AlertDialog.Builder(Context context)中的参数用Activity.this(Activity是你的Activity的名称)来填充就可以正确的创建一个Dialog了。 
 


更多相关文章

  1. android调用js
  2. Android高手进阶教程(五)之----Android(安卓)中LayoutInflater的
  3. android 自定义 permission 权限
  4. 使用NDK开发SQLite3
  5. android adb命令
  6. Android(安卓)RecyclerView(和SnapHelper) 实现类似ViewPager的
  7. android 退出activity 转吖转
  8. Mac 安装 Android(安卓)Studio
  9. Android中获取网页表单中的数据实现思路及代码

随机推荐

  1. 互联网下半场,数据岗位的你该何去何从?
  2. Seata RPC 模块的重构之路
  3. 亲历者说 | 完整记录一年多考拉海购的云
  4. 轻松玩转Python发送新春祝福给指定好友
  5. Python 的四种共享传参详解
  6. 数据分析框架和任务拆解?看看大神怎么做!
  7. Cocos平台 | 快速集成AGC云函数服务
  8. 关于数据科学的趋势和前景,这里有你想了解
  9. 推荐:这才是你寻寻觅觅想要的 Python 可视
  10. 谁为你的健康数据负责?