参考 : http://www.2cto.com/kf/201503/385753.htmlhtml
这个问题好像没有获得统一的认识,有些人使用以下方法,但我感受并不能根治:ide
大体思路: 最好是动态建立一个WebView的容器,而不是在xml布局里写死。 wv= new WebView(context); 这个Context 不要用当前Acticvty的context,由于万一当前Actity被杀死,则很容易OOM,因此咱们建议使用Applcation的context.布局
接下来动态添加 addView(mWebView );最后在Destroy()方法中以下操做:spa
@Override
code
protected
void
onDestroy() {
xml
ll.removeAllViews();
htm
wv.stopLoading();
进程
wv.removeAllViews();
内存
wv.destroy();
rem
wv =
null
;
ll =
null
;
super
.onDestroy();
}
一般根治这个问题的办法是为 WebView 开启另一个进程,经过 AIDL 与主进程进行通讯, WebView 所在的进程能够根据业务的须要选择合适的时机进行销毁,从而达到内存的完整释放.