java.lang.IllegalArgumentException: Receiver not registered: android.widget.ZoomButtonsController$1@

来源:互联网 发布:天刀洛天依捏脸数据 编辑:程序博客网 时间:2024/06/05 15:14

最近抓LOG发现有这个错;

java.lang.IllegalArgumentException: Receiver not registered: android.widget.ZoomButtonsController$1@7b2c560at android.app.LoadedApk.forgetReceiverDispatcher(LoadedApk.java:781)    atandroid.app.ContextImpl.unregisterReceiver(ContextImpl.java:1727)at android.content.ContextWrapper.unregisterReceiver(ContextWrapper.java:522)at android.widget.ZoomButtonsController.setVisible(ZoomButtonsController.java:408)at android.widget.ZoomButtonsController$2.handleMessage(ZoomButtonsController.java:178)at android.os.Handler.dispatchMessage(Handler.java:102)at android.os.Looper.loop(Looper.java:159)at android.app.ActivityThread.main(ActivityThread.java:5541)at java.lang.reflect.Method.invoke(Native Method)at java.lang.reflect.Method.invoke(Method.java:372)at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:975)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:770)     

问题的来源是WebView中包含一个ZoomButtonsController,当使用web.getSettings().setBuiltInZoomControls(true);启用后,用户一旦触摸屏幕,就会出现缩放控制图标。如果图标自动消失前退出当前Activity的话,就会报上面的这些异常。

查到的解决方案:

  1. 禁用
  2. 在Activity的onDestroy里面加上这么一句:web.setVisibility(View.GONE);把WebView设置为GONE就可以了。
  3. 延迟destroy webview

我的代码:

    @Override    protected void onDestroy() {       /* if(webview!=null) {            webview.setVisibility(View.GONE);            webview.removeAllViews();            webview.destroy();            releaseAllWebViewCallback();        }*/     if(webview != null) {         webview.getSettings().setBuiltInZoomControls(true);         webview.setVisibility(View.GONE);         long timeout = ViewConfiguration.getZoomControlsTimeout();//timeout ==3000         Log.i("time==",timeout+"");         new Timer().schedule(new TimerTask() {             @Override             public void run() {                 // TODO Auto-generated method stub                 webview.destroy();             }         }, timeout);     }super.onDestroy();        }
0 1
原创粉丝点击