如题会出现这样的问题,一般是显示的在Activity的生命周期onDestroy方法里调用了WebView.destroy() 来回收销毁WebView对象造成的:
if (webView != null) {
webView.clearCache(true);
webView.removeAllViews();
webView.destroy();
webView = null;
}
首先我们来解释Error: WebView.destroy() called while still attached!错误的意思:
意思是webview对象还在父容器控件中引用,你就想调用destroy来销毁而报错。所以顾名思义我们得先解除这个引用,才能对webview对象进行回收销毁。
if (webView != null) {
mLayoutContainer.removeView(webView);
webView.clearCache(true);
webView.removeAllViews();
webView.destroy();
webView = null;
}
mLayoutContainer就是父容器控件,把webview对象从父容器中删除,就可以调用destroy来销毁了。