技術(shù)員聯(lián)盟提供win764位系統(tǒng)下載,win10,win7,xp,裝機(jī)純凈版,64位旗艦版,綠色軟件,免費(fèi)軟件下載基地!

當(dāng)前位置:主頁(yè) > 教程 > 服務(wù)器類(lèi) >

Android開(kāi)發(fā)中簡(jiǎn)單實(shí)用的調(diào)試應(yīng)用教程

來(lái)源:技術(shù)員聯(lián)盟┆發(fā)布時(shí)間:2017-10-21 06:14┆點(diǎn)擊:

  大家應(yīng)該都有所體會(huì),在應(yīng)用開(kāi)發(fā)中,我們常常會(huì)進(jìn)行日志打印或者debug調(diào)試,以此來(lái)分析運(yùn)行時(shí)的一些信息,便于發(fā)現(xiàn)bug和問(wèn)題。Android Studio的Debug功能很好用,但是有時(shí)候有些情況下,就顯得不是那么快捷和便利。

  比如

  我們調(diào)試的點(diǎn)在應(yīng)用一打開(kāi)的時(shí)候,很靠前,例如Application的onCreate方法中,以至于我們不能足夠快的設(shè)置進(jìn)程為debug模式

  雖然上面的情況可以通過(guò)Android Studio的debug運(yùn)行來(lái)解決,但是如果項(xiàng)目很大的話,運(yùn)行起來(lái)也會(huì)比較耽誤時(shí)間

  那么怎么解決上面的問(wèn)題呢,其實(shí)只需要執(zhí)行一行命令即可

  adb shell am set-debug-app -w com.example.jishuxiaoheiwu.appdebugsample

  其中

  set-debug-app 用來(lái)應(yīng)用為debug模式

  -w 意思為wait,在進(jìn)程啟動(dòng)的時(shí)候,等待debugger進(jìn)行連接

  com.example.jishuxiaoheiwu.appdebugsample 代表想要調(diào)試的應(yīng)用的包名或ApplicationId

  執(zhí)行上面的命令,當(dāng)我們?cè)俅螁?dòng)目標(biāo)應(yīng)用時(shí),會(huì)得到這樣的畫(huà)面

Android開(kāi)發(fā)中簡(jiǎn)單實(shí)用的調(diào)試應(yīng)用教程 三聯(lián)

  然后,我們就會(huì)有足夠的時(shí)間,來(lái)使用Run—> Attach Debugger to Android Process 來(lái)綁定進(jìn)程debug。 綁定后對(duì)話框消失,下次啟動(dòng)就是正常的啟動(dòng)(沒(méi)有上面的對(duì)話框了)

  那么一次debug不一定能解決問(wèn)題,多次調(diào)試則在所難免,那么每次都要執(zhí)行這個(gè)命令么?

  答案是可以,但是有更好的方式。即

  adb shell am set-debug-app -w --persistent com.example.jishuxiaoheiwu.appdebugsample

  上面的代碼和之前有所不同,表現(xiàn)在一個(gè)—persistent

  —persitent意思是持久的,意思是一直設(shè)置這個(gè)應(yīng)用為調(diào)試模式,即每次開(kāi)啟(進(jìn)程創(chuàng)建)都會(huì)彈出對(duì)話框,即使卸載再安裝或者更新應(yīng)用

  如果多次debug完成后,解決了問(wèn)題,想要恢復(fù)正常的啟動(dòng)也很簡(jiǎn)單

  adb shell am clear-debug-app

  這個(gè)調(diào)試的方法很簡(jiǎn)單,但是可能會(huì)節(jié)省我們很多的寶貴時(shí)間。希望可以幫助到各位開(kāi)發(fā)同行。

  另外,當(dāng)你的開(kāi)發(fā)中遇到效率問(wèn)題時(shí),你需要做出思考,發(fā)覺(jué)更快捷的工作方式,而不是為了調(diào)試Application中onCreate方法中的代碼,每次都點(diǎn)擊Android Studio的debug按鈕。