Android APP 內(nèi)存泄漏檢測(cè)—LeakCanary,卡頓檢測(cè)—Blockcanary工具使用方法

前言

一直在考慮APP的性能優(yōu)化有沒有什么簡(jiǎn)單的工具或者方法铐料,找了好久相關(guān)的文章噪叙,有很多講的是原理解析至于如何操作感覺不是很清晰矮锈,所以就在這上面花費(fèi)了點(diǎn)時(shí)間,自己總結(jié)了下這兩種工具(LeakCanary睁蕾,Blockcany),希望能節(jié)省初學(xué)者的時(shí)間苞笨,這兩種工具到底有什么用?具體應(yīng)該如何操作子眶?

一瀑凝,首先我們來感覺下LeakCanary:

? ? ? ? oom 內(nèi)存溢出并不只是在大圖片或者圖片加載不做軟緩存的時(shí)候造成的問題。更深層次的問題就是臭杰,內(nèi)存泄漏粤咪,該釋放的沒有釋放,一個(gè)Activity中引用的view? view中引用的資源和bitamp渴杆,在activity銷毀的時(shí)候寥枝,與之相關(guān)聯(lián)的資源都會(huì)被釋放,但是如果其他線程正在運(yùn)行并且持有這個(gè)Activity的引用磁奖,則會(huì)造成activity不會(huì)被釋放脉顿,這時(shí)候就造成內(nèi)存泄漏,如果多次再打開此頁面点寥,很容易造成oom如果A對(duì)象持有B對(duì)象的引用艾疟,當(dāng)GC應(yīng)當(dāng)回收B的時(shí)候,發(fā)現(xiàn)A持有引用敢辩,則不會(huì)回收B對(duì)象蔽莱。此時(shí)B就造成了內(nèi)存泄漏

? ? ? ? 對(duì)于一個(gè)已經(jīng)完成的項(xiàng)目,如果出現(xiàn)上面講述的問題戚长,那我們?cè)撊绾慰焖俨檎业竭@個(gè)問題的出處盗冷,并且直觀的呈現(xiàn)在我們面前?LeankCanary這個(gè)工具便可以幫到我們同廉。

以下介紹LeakCanary在AndroidStudio中的使用

1仪糖、在Module:App的grable中配置如下


導(dǎo)入依賴包leakcanary


2.在項(xiàng)目的Application的onCreate配置如下

application中實(shí)例化

3.調(diào)用檢測(cè)

起始activity中調(diào)用

4.如果出現(xiàn)內(nèi)存泄漏會(huì)出現(xiàn)如下圖片


出現(xiàn)問題處

界面非常明了的告訴你,是那個(gè)對(duì)象造成的內(nèi)存泄漏迫肖。以此來做代碼修改锅劝。具體實(shí)現(xiàn)demo可參考:github.com/SOFTPOWER1991/leakcanarySample_androidStudio

二,卡頓檢測(cè)—Blockcanary的使用

BlockCanary是一個(gè)Android平臺(tái)的一個(gè)非侵入式的性能監(jiān)控組件蟆湖,應(yīng)用只需要實(shí)現(xiàn)一個(gè)抽象類故爵,提供一些該組件需要的上下文環(huán)境,就可以在平時(shí)使用應(yīng)用的時(shí)候檢測(cè)主線程上的各種卡慢問題隅津,并通過組件提供的各種信息分析出原因并進(jìn)行修復(fù)诬垂。

操作步驟如下:

1.導(dǎo)入依賴包:

依賴

2.在Application中使用:

public class DemoApplication extends Application {

@Override

public void onCreate() {

// 在主進(jìn)程初始化調(diào)用哈

BlockCanary.install(this, new AppBlockCanaryContext()).start();

}

}

3.實(shí)現(xiàn)自己的監(jiān)控上下文:

// 實(shí)現(xiàn)各種上下文劲室,包括應(yīng)用標(biāo)示符,用戶uid结窘,網(wǎng)絡(luò)類型很洋,卡慢判斷闕值,Log保存位置等例如下面:


圖1


圖2


圖3


圖4
圖5

具體可參考:github.com/markzhai/AndroidPerformanceMonitor/blob/master/README_CN.md

本文參考了網(wǎng)上資料隧枫,總結(jié)了一下使用方法喉磁,方便更多使用者的使用。

參考文檔:www.open-open.com/lib/view/open1453377370620.html

? ? ? ? ? ? ? ? ? ??blog.csdn.net/watermusicyes/article/details/46333925

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末悠垛,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子娜谊,更是在濱河造成了極大的恐慌确买,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,627評(píng)論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件纱皆,死亡現(xiàn)場(chǎng)離奇詭異湾趾,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)派草,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,180評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門搀缠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人近迁,你說我怎么就攤上這事艺普。” “怎么了鉴竭?”我有些...
    開封第一講書人閱讀 169,346評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵歧譬,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我搏存,道長(zhǎng)瑰步,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,097評(píng)論 1 300
  • 正文 為了忘掉前任璧眠,我火速辦了婚禮缩焦,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘责静。我一直安慰自己袁滥,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,100評(píng)論 6 398
  • 文/花漫 我一把揭開白布灾螃。 她就那樣靜靜地躺著呻拌,像睡著了一般。 火紅的嫁衣襯著肌膚如雪睦焕。 梳的紋絲不亂的頭發(fā)上藐握,一...
    開封第一講書人閱讀 52,696評(píng)論 1 312
  • 那天靴拱,我揣著相機(jī)與錄音,去河邊找鬼猾普。 笑死袜炕,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的初家。 我是一名探鬼主播偎窘,決...
    沈念sama閱讀 41,165評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼溜在!你這毒婦竟也來了陌知?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 40,108評(píng)論 0 277
  • 序言:老撾萬榮一對(duì)情侶失蹤掖肋,失蹤者是張志新(化名)和其女友劉穎仆葡,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體志笼,經(jīng)...
    沈念sama閱讀 46,646評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡沿盅,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,709評(píng)論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了纫溃。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片腰涧。...
    茶點(diǎn)故事閱讀 40,861評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖紊浩,靈堂內(nèi)的尸體忽然破棺而出窖铡,到底是詐尸還是另有隱情,我是刑警寧澤坊谁,帶...
    沈念sama閱讀 36,527評(píng)論 5 351
  • 正文 年R本政府宣布万伤,位于F島的核電站,受9級(jí)特大地震影響呜袁,放射性物質(zhì)發(fā)生泄漏敌买。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,196評(píng)論 3 336
  • 文/蒙蒙 一阶界、第九天 我趴在偏房一處隱蔽的房頂上張望虹钮。 院中可真熱鬧,春花似錦膘融、人聲如沸芙粱。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,698評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽春畔。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間律姨,已是汗流浹背振峻。 一陣腳步聲響...
    開封第一講書人閱讀 33,804評(píng)論 1 274
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留择份,地道東北人扣孟。 一個(gè)月前我還...
    沈念sama閱讀 49,287評(píng)論 3 379
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像荣赶,于是被迫代替她去往敵國(guó)和親凤价。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,860評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容