Google 2018 IO大会推出了Android新的扩展库AndroidX,用于替换原来的Android扩展库,将原来的android.*
替换成androidx.*
:.
Old | New |
---|---|
android.support.** | androidx.@ |
android.databinding.** | androidx.databinding.@ |
android.design.** | com.google.android.material.@ |
android.support.test.** | (in a future release) androidx.test.@ |
android.arch.** | androidx.@ |
android.arch.persistence.room.** | androidx.room.@ |
android.arch.persistence.** | androidx.sqlite.@ |
接下来我们看使用AndroidX的扩展库需要那些配置:
1、在project的gradle.properties
文件里添加如下配置:
1 | android.useAndroidX=true |
2、将依赖库替换成AndroidX的库
比如将com.android.support:appcompat-v7
库替换为androidx.appcompat:appcompat:1.0.0-alpha1
具体对应关系可以查看Google官方文档:AndroidX refactoring
3、使用最新Android SDK
完成上面两步后编译发现会报错,是因为AndroidX需要使用最新的Android sdk,打开Android Studio的设置找到Android SDK下载最新的Android P Preview
的sdk,然后将module的build.gradle里的compileSdkVersion
改为compileSdkVersion 'android-P'
然后再编译就OK了
4、修改import,将原来import的android.**
的包删除重新import为androidx.**
的新的包
Android Studio 3.2 Canary 14及以上版本提供了更加方便快捷的方法一键重构到AndroidX。选择菜单上的ReFactor
->Refactor to AndroidX...
即可:
但是需要注意的是,如果你的项目compileSdkVersion
不是最新的,即是27或者以下的,点击Refactor to AndroidX...
会提示:
1 | You need to have at least have compileSdk 28 set in your module build.gradle to refactor to androidx |
提示很明显是让你使用28的sdk,但是在Android SDK里发现没有28的sdk,其实就是使用我们上面提到的最新的Android P Preview
,即将compileSdkVersion
改为compileSdkVersion 'android-P'
即可,然后点击Refactor to AndroidX...
Android Studio就会自动将你的项目重构为使用AndroidX
的库,即自动完成我们上面的1、2、4步。
好了,到此AndroidX的简单集成就完成了,更多详细信息请查看Google官网:
AndroidX release notes
AndroidX refactoring
Hello World, AndroidX