Android?Studio調(diào)試Gradle插件詳情
前言:
- 使用ASM在編譯期修改字節(jié)碼來完成各種功能(統(tǒng)計方法耗時、全埋點統(tǒng)計...),就需要開發(fā)Gradle插件。開發(fā)插件中遇到問題排查使用日志輸出效率太低了,能斷點調(diào)試的話就更好了。其實已經(jīng)有很多文章寫了調(diào)試插件的方法,但是自己照著他們的步驟下來還是遇到一些問題,把這些問題記錄下來方便大家少走彎路。
- Android Studio版本是3.5.2,Gradle版本是3.5.1
1.點擊【Run】->【Edit Configurations...】:

2.然后點擊左上角的【+】,選擇【Remote】:

3.名字隨便起,把命令行參數(shù)復(fù)制下來,【Use module classpath】選擇要調(diào)試的插件,其他默認即可,然后點擊【OK】:

這樣服務(wù)端就搞好了,稍后我們需要配置客戶端調(diào)試器讓其連接過來,就可以調(diào)試了
4.在目標項目新建gradle任務(wù)并連接到服務(wù)端
在目標項目(即引入插件的那個項目),打開gradle目錄,啟動模塊一般都是app,所以我們展開到【:app】->【Tasks】右擊【build】選擇create

5. 在打開的界面把第3步復(fù)制下來的內(nèi)容粘貼到【VM options】,并且將suspend=n改為suspend=y然后點擊【OK】:

6. 【:app】->【Tasks】->【Run Configgurations】會生成一個任務(wù),最終在最終就是下邊這個樣子:

7. 現(xiàn)在可以開始調(diào)試了,在插件代碼里面需要調(diào)試的地方打好斷點,雙擊我們新建的gradle任務(wù):

8.將工具欄的運行選項改成我們新建的遠程調(diào)試那個選項,沒有取名字的話默認就是【unnamed】,然后點擊啟動調(diào)試的圖標:

啟動成功會有如下輸出:

9.目標項目的調(diào)試器很快就會連接到我們建立的服務(wù)端并自動跳轉(zhuǎn),遇到斷點則會斷下來:

問題:
- 斷點只能進入Plugin的apply方法,不能進入Transform的transform方法,clean項目再執(zhí)行上面步驟7、8
到此這篇關(guān)于Android Studio調(diào)試Gradle插件詳情的文章就介紹到這了,更多相關(guān)Android Studio調(diào)試Gradle內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Android 多種dialog的實現(xiàn)方法(推薦)
下面小編就為大家分享一篇Android 多種dialog的實現(xiàn)方法(推薦),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01
Android簡單記錄和恢復(fù)ListView滾動位置的方法
這篇文章主要介紹了Android簡單記錄和恢復(fù)ListView滾動位置的方法,涉及Android針對ListView位置屬性的相關(guān)操作技巧,需要的朋友可以參考下2016-08-08
Android 2.3 撥號上網(wǎng)流程從源碼角度進行分析
SIM卡實現(xiàn)撥號上網(wǎng)功能之前需要設(shè)置一番,這些設(shè)置步驟究竟做了哪些事情呢?我們現(xiàn)在就從源碼的角度進行分析2013-01-01

