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