WebView避免内存泄露的方法

最近遇到一个Webview内存泄露的问题,上网查了一些结果,在此记录一下:

创新互联成立于2013年,先为苍南等服务建站,苍南等地企业,进行企业商务咨询服务。为苍南企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

    webview在android系统中属于一个比较特殊的view,在调用 webview.destroy()的时候,必须确保webview已经从view tree中被删除,否则这个函数不会执行的。如本app中的用法,在xml中静态定义的webview,只有在整个view退出后调用 webview.destroy()才会被正确执行,但整个view退出后又找不到webview了,这个是很矛盾的。

    所以android给出的解决方案是,不要在xml中定义webview,在xml中只定义view,然后在需要webview的时候,创建一个webview,并把webview放到定义好的view的位置。
在删除得的时候,先把webview从parent view中删除,然后释放,就不会有问题了。


在应用层修改如下:
    WebView    mWebView = new WebView(getApplicationgContext());
    LinearLayout mll  = findViewById(R.id.xxx);
    mll.addView(mWebView);

    protected void onDestroy() {
          super.onDestroy(); 

          mll.removeView(wv);  //从布局中移除webView

          mWebView.removeAllViews();
          mWebView.destroy()
    }

参考资料:http://my.oschina.net/zhibuji/blog/100580


本文题目:WebView避免内存泄露的方法
网页URL:http://csruizhi.cn/article/pdcpjd.html

其他资讯

Copyright © 2007-2024 成都优众联杰科技有限公司 All Rights Reserved 蜀ICP备2024116266号
友情链接: 网站制作报价 手机网站建设 网站建设推广 网站制作 成都网站设计 网站建设公司 外贸网站建设 网站建设 成都网站制作 企业网站设计 成都网站制作 成都商城网站制作 宜宾网站设计 成都营销网站制作 网站建设开发 企业网站制作 营销型网站建设 H5网站制作 成都网站建设公司 重庆网站制作 成都h5网站建设 专业网站设计