Android?Studio調(diào)試Gradle插件詳情
前言:
- 使用ASM在編譯期修改字節(jié)碼來完成各種功能(統(tǒng)計方法耗時、全埋點(diǎn)統(tǒng)計...),就需要開發(fā)Gradle插件。開發(fā)插件中遇到問題排查使用日志輸出效率太低了,能斷點(diǎn)調(diào)試的話就更好了。其實(shí)已經(jīng)有很多文章寫了調(diào)試插件的方法,但是自己照著他們的步驟下來還是遇到一些問題,把這些問題記錄下來方便大家少走彎路。
- Android Studio版本是3.5.2,Gradle版本是3.5.1
1.點(diǎn)擊【Run】->【Edit Configurations...】:
2.然后點(diǎn)擊左上角的【+】,選擇【Remote】:
3.名字隨便起,把命令行參數(shù)復(fù)制下來,【Use module classpath】選擇要調(diào)試的插件,其他默認(rèn)即可,然后點(diǎn)擊【OK】:
這樣服務(wù)端就搞好了,稍后我們需要配置客戶端調(diào)試器讓其連接過來,就可以調(diào)試了
4.在目標(biāo)項(xiàng)目新建gradle任務(wù)并連接到服務(wù)端
在目標(biāo)項(xiàng)目(即引入插件的那個項(xiàng)目),打開gradle目錄,啟動模塊一般都是app,所以我們展開到【:app】->【Tasks】右擊【build】選擇create
5. 在打開的界面把第3步復(fù)制下來的內(nèi)容粘貼到【VM options】,并且將suspend=n改為suspend=y然后點(diǎn)擊【OK】:
6. 【:app】->【Tasks】->【Run Configgurations】會生成一個任務(wù),最終在最終就是下邊這個樣子:
7. 現(xiàn)在可以開始調(diào)試了,在插件代碼里面需要調(diào)試的地方打好斷點(diǎn),雙擊我們新建的gradle任務(wù):
8.將工具欄的運(yùn)行選項(xiàng)改成我們新建的遠(yuǎn)程調(diào)試那個選項(xiàng),沒有取名字的話默認(rèn)就是【unnamed】,然后點(diǎn)擊啟動調(diào)試的圖標(biāo):
啟動成功會有如下輸出:
9.目標(biāo)項(xiàng)目的調(diào)試器很快就會連接到我們建立的服務(wù)端并自動跳轉(zhuǎn),遇到斷點(diǎn)則會斷下來:
問題:
- 斷點(diǎn)只能進(jìn)入Plugin的apply方法,不能進(jìn)入Transform的transform方法,clean項(xiàng)目再執(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的實(shí)現(xiàn)方法(推薦)
下面小編就為大家分享一篇Android 多種dialog的實(shí)現(xiàn)方法(推薦),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01Android自定義View實(shí)現(xiàn)簡單水波紋效果
這篇文章主要為大家詳細(xì)介紹了Android自定義View實(shí)現(xiàn)簡單水波紋效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-08-08Android簡單記錄和恢復(fù)ListView滾動位置的方法
這篇文章主要介紹了Android簡單記錄和恢復(fù)ListView滾動位置的方法,涉及Android針對ListView位置屬性的相關(guān)操作技巧,需要的朋友可以參考下2016-08-08Android 2.3 撥號上網(wǎng)流程從源碼角度進(jìn)行分析
SIM卡實(shí)現(xiàn)撥號上網(wǎng)功能之前需要設(shè)置一番,這些設(shè)置步驟究竟做了哪些事情呢?我們現(xiàn)在就從源碼的角度進(jìn)行分析2013-01-01