這篇“Android中使用webview出現(xiàn)內(nèi)存泄露怎么解決”文章的知識(shí)點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價(jià)值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來(lái)看看這篇“Android中使用webview出現(xiàn)內(nèi)存泄露怎么解決”文章吧。
1.避免在xml直接寫(xiě)webview控件,這樣會(huì)引用activity,所以在xml寫(xiě)一個(gè)LinearLayout,然后 linearLayout.addView(new MyWebview(getApplicationContext()));
這樣動(dòng)態(tài)生成webview就能避免內(nèi)存泄漏,可是這樣會(huì)導(dǎo)致部分機(jī)型的webview里面點(diǎn)擊超鏈接會(huì)出現(xiàn)異常,程序崩潰,暫時(shí)的解決辦法是禁止點(diǎn)擊,需要重寫(xiě)webview,
public class MyWebview extends WebView { public MyWebview(Context context) { super(context); } public MyWebview(Context context, AttributeSet attrs) { super(context, attrs); } public MyWebview(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); } @Override public boolean onTouchEvent(MotionEvent event) { return false; } }
這樣能避免出現(xiàn)程序崩潰。
2.activity關(guān)閉時(shí)需要手動(dòng)釋放webview內(nèi)存
@Override protected void onDestroy() { super.onDestroy(); if(webview_projectinfo != null){ webview_projectinfo.removeAllViews(); webview_projectinfo.destroy(); webview_projectinfo = null; ll_webview.removeAllViews(); ll_webview = null; } }
以上就是關(guān)于“Android中使用webview出現(xiàn)內(nèi)存泄露怎么解決”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對(duì)大家有幫助,若想了解更多相關(guān)的知識(shí)內(nèi)容,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
新聞標(biāo)題:Android中使用webview出現(xiàn)內(nèi)存泄露怎么解決-創(chuàng)新互聯(lián)
文章URL:http://www.chinadenli.net/article46/dsgjeg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、微信小程序、網(wǎng)站制作、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)公司、關(guān)鍵詞優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容