Android X出現已經有段時間了,大部分項目都已經升級AndroidX了,熟練的問了問那些升級AndroidX的好友,都說用上去舒服,於是我也愉快的開始升級項目。
首先必然是去官網看文檔,閱讀下英文文檔,隨後愉快的選擇語言爲中文。
文檔地址 :https://developer.android.google.cn/jetpack/androidx/migrate#migrate
原文介紹
AndroidX 會將原始支持庫 API 軟件包映射到 androidx
命名空間。只有軟件包和 Maven 工件名稱發生了變化;類、方法和字段名稱沒有改變。
使用 Android Studio 遷移現有項目
藉助 Android Studio 3.2 及更高版本,您可以通過從菜單欄中依次選擇 Refactor > Migrate to AndroidX,快速遷移現有項目以使用 AndroidX。
如果您有任何尚未遷移至 AndroidX 命名空間的 Maven 依賴項,那麼當您在 gradle.properties
文件中將以下兩個標記設置爲 true
時,Android Studio 編譯系統也會爲您遷移這些依賴項:
android.useAndroidX=true
android.enableJetifier=true
要遷移未使用任何第三方庫但帶有需要轉換的依賴項的現有項目,可以將 android.useAndroidX
標記設置爲 true
,並將 android.enableJetifier
標記設置爲 false
。
工件映射----也就是遷移你再app build.gradle 裏的Android 依賴
比如你有拍照功能,你肯定要定義FileProvider ,那麼你就要將你AndroidManifest 裏的
android.support.v4.content.FileProvider
改成
androidx.core.content.FileProvider
由於字數限制,替換依賴在另外二篇博客中發佈
Android 升級Android X 所需要替換的包(一)
Android 升級Android X 所需要替換的包(二)
最後你會發現你的AndroidManifest 所有的 activity 都編譯異常了,爲什麼呢?,很簡單,升級成AndroidX 的包了,但你項目裏都是import舊的包,全局替換一下就好了
import androidx.appcompat.app.AppCompatActivity