最近博主在關注JetPack
相關內容,發現從support
轉到androidx
後,不少依賴庫的名稱變化有點大,每次想添加一個依賴庫,都都得扒一扒官網查看路徑和版本,確實有點難受。不過在jetbrains
插件世界裏,有一款能夠自動補全的插件GradleDependenciesHelperPlugin,它只支持從mavenCentral()
搜索並不支持google()
的倉庫,因此android-dependencies-completion
應運而生,這是一款嘗試對Android開發
友好的dependencies
補全插件。android
Jetpack
相關的軟件包在Android Studio->Setting ->Plugins中搜索關鍵字:android-dependencies-completion
或者 12479
:ios
插件網站
:plugins.jetbrains.com/plugin/1247…git
下載地址
:github.com/HitenDev/an…github
您能夠在上面兩個地址下載jar包,AS安裝本地jar插件的方法比較簡單,這裏就不囉嗦了;bash
因爲插件依賴 Code Completion->SmartType Completion,因此使用時務必保證SmartType Completion
是開啓的,並且包裝SmartType Completion
的快捷鍵不和其它快捷鍵衝突;maven
默認快捷鍵:gradle
^(control) + ⇧(shift) + space
ctrl + alt + space
ctrl + shift + space
據悉Windows
快捷鍵和系統的快捷鍵衝突,請使用的小夥伴耐心解決一下衝突,千萬不要所以而放棄;網站
在項目gradle
文件中輸入字符串時,若是須要補全,請按下快捷鍵
ui
使用場景不限制build.gradle
,也不限制dependencies
下,更不限制是implementation
仍是compile
;this
一般Anroid開發者喜歡把依賴庫統一放置,不見得定義在build.gradle
中,全部這種場景仍是得支持;
Android開發習慣把gradle依賴庫提取成變量,這種場景也是考慮在內,操做方式是在輸入字符串的尾部添加#
符號;
#
,表示須要提取版本號##
,表示須要把整個字符串都提取出來;常見場景:
因爲依賴庫字符串是由group:artifact:version
三部分組成,而用戶輸入關鍵字時大部分都不會是完整的三段式,因此#
支持在缺乏的狀態下完成;
關鍵字+#
group:artifact:+#
group:artifact:version+#
當字符串是由完整的格式加#
時,會直接提取變量並完成替換
#
生成的版本變量,命名規則是ver_$artifact//before
implementation 'com.google.code.gson:gson:2.8.5#'
//after
ext.ver_gson = '2.8.5' //please move this code to a unified place.
implementation "com.google.code.gson:gson:$ver_gson"
複製代碼
#
號後面追加字符串xxx,則命名爲ver_xxx//before
implementation 'com.google.code.gson:gson:2.8.5#hiten'
//after
ext.ver_hiten = '2.8.5' //please move this code to a unified place.
implementation "com.google.code.gson:gson:$ver_hiten"
複製代碼
##
生成的全路徑變量,命名規則是dep_$artifact//before
implementation 'com.google.code.gson:gson:2.8.5##'
//after
ext.dep_gson = 'com.google.code.gson:gson:2.8.5' //please move this code to a unified place.
implementation "$dep_gson"
複製代碼
##
號後面追加字符串xxx,則命名爲dep_xxx//before
implementation 'com.google.code.gson:gson:2.8.5##hiten'
//after
ext.dep_hiten = 'com.google.code.gson:gson:2.8.5' //please move this code to a unified place.
implementation "$dep_hiten"
複製代碼
變量生成的代碼,會在當前光標上一行插入,並和當前行左對齊,理論上這行代碼放在此處不講究,因此一般還須要做者把這行代碼移動到項目的指定位置;
ext.ver_gson = '2.8.5' //please move this code to a unified place.
複製代碼
單/雙引號不設限
gralde字符串中可使用$
引用變量,前提是字符串必須是雙引號"
包裹,我此處作了特殊轉換,用戶輸入時不用在乎是單引號仍是雙引號,只管使用#
生成就行;
若是您對這個功能感興趣,能夠加入一塊兒完善:
項目地址: github.com/HitenDev/an…
您有新的想法,歡迎私聊我或者在github上添加issues;
暱稱
: HitenDev郵箱
: zzdxit@gmail.comgayhub
: github.com/HitenDev掘金
: juejin.im/user/595a16…