您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“Android Studio3.5中如何使用AndroidX”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“Android Studio3.5中如何使用AndroidX”這篇文章吧。
一、我們從新建一個項目說。
3.5新建項目,是默認使用androidx的
看最后一樣,Use androidx.* artifacts。而且不能取消掉的。
那么到我們項目里,這一點就對應于我們的 gradle.properties文件里的2句話
android.useAndroidX=true # Automatically convert third-party libraries to use AndroidX android.enableJetifier=true
1.1、那么這兩句話代表什么呢
意思就是,你所用的support的包,他會自動幫你遷移到androidx里。這里舉個例子(接下來的例子出現的bug是針對系統庫的),比如我們之前經常會用support里的AppBarLayout組合CoordinatorLayout實現很酷炫的效果。我們都知道,這個是在support的design里。那么我們還是把它添加進去, 注意:studio3.5后添加包會有點不一樣
右鍵你的項目,選中Open Module Setting
在打開的界面,選中Dependencies,點擊里面的加號,繼續選擇Library Dependency
在搜索框里,搜索design。出現一堆(androidx的版本就是這樣選擇的),這里我們選擇com.android.support
選擇加入后,studio會自動build,并加入依賴。build.gradle會加上
implementation 'com.android.support:design:28.0.0'
注意:此時你去xml打上AppBarLayout,并不會提示,甚至根本就沒有。個人覺得的是因為studio3.5優化的太好了,不會隨便你幫我們rebuild項目,也不知道是不是bug;這個時候點擊build --> Rebuild Project,項目。之后xml使用正常,如下
<com.google.android.material.appbar.AppBarLayout android:layout_width="match_parent" android:layout_height="?actionBarSize"/>
你會發現,這里不是support的包,點進去已經是遷移完的androidx的包。正是因為 gradle.properties 那兩句話,幫我們完成了。build.gradle顯示的還是support的包,怎么辦
額外注意:就如上面說的那個類似bug的問題,假如此時你再build.gradle去掉了這個依賴,如果按之前的操作,我們都會點擊Sync Projec with Gradl Files,去更新下。之后項目就沒這個包了。沒錯,studio3.5也是這樣,但是你再xml里,繼續打AppBarLayout后,依舊會提示,而且xml里不報錯,能運行。只是運行后,才會崩潰報錯。正確做法還是需要,在去掉依賴后,繼續點擊下Rebuild Project,這時候才會正常。(感覺這個時候就是bug了)
二、一鍵將build.gradle的support包改成andoridx
點擊 Refactor --> Migrate to AndroidX
后續一直點默認,我這里就不貼圖了,直接說操作,Migrate --> (選擇我們的項目,點擊OK) --> YES。后會彈出下圖,
點擊Do Refactor。之后,那么'com.android.support:design:28.0.0'會直接改變成響應的androidx包
implementation 'com.google.android.material:material:1.0.0'
三、可能有些人升級了studio,但是卻不像使用androidx
正確做法是,把 gradle.properties 里那2句話去掉。同時,把你的build.gradle改成你之前的support包。我們知道support包最后一版本是28。之后一切導包,都不會在遷移了。是support,就是support包。
以上是“Android Studio3.5中如何使用AndroidX”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。