美文网首页
Android 10 之 适配AndroidX

Android 10 之 适配AndroidX

作者: 木木禾木 | 来源:发表于2020-05-13 09:29 被阅读0次

Android 10 (API 29)官方介绍https://developer.android.google.cn/about/versions/10/highlights

一、AndroidX

官方AndroidX说明 https://developer.android.google.cn/jetpack/androidx

  1. 版本 28.0.0 是Android Support 库的最后一个版本。官方将不再发布 android.support 库版本。所有新功能都将在 AndroidX命名空间中开发。

  2. AndroidX重新设计了包结构,旨在鼓励库的小型化,支持库和架构组件包的名字进行了简化。而且这也是减轻Android生态系统碎片化的有效方式。

  3. 与Android Support库不同,AndroidX软件包是单独维护和更新的。这些AndroidX包使用严格的语义版本控制,从版本1.0.0开始,您可以单独更新项目中的AndroidX库。

二、现有项目迁移

操作之前最后先将代码备个份哈~

  1. 将支持库更新到最终版本:[版本 28.0.0] (1.0.0 版本的 AndroidX 工件是与支持库 28.0.0 工件等效的二进制文件)

  2. 使用 Android Studio 3.2 及更高版本,Refactor > Migrate to AndroidX即可完成迁移
    通常该操作并不能完全修改完毕(尤其是比较大的项目),部分资源尚需手动修改(如下步骤)


    Migrate to AndroidX
  3. 修改build.gradle的compileSdkVersion、targetSdkVersion、buildToolsVersion的配置,都设置为29

   compileSdkVersion 29
   buildToolsVersion 29.0.2
   defaultConfig {
      targetSdkVersion 29
   }
  1. 修改项目的 gradle.properties
# 表示使用对应的 AndroidX 库而非支持库
android.useAndroidX=true
# 表示将依赖包也迁移到AndroidX 。(Android 插件会通过重写现有第三方库的二进制文件,自动将这些库迁移为使用 AndroidX。)
# 如果取值为 false ,表示不迁移依赖包到AndroidX,但在使用依赖包中的内容时可能会出现问题,
# 如果你的项目中没有使用任何三方依赖,此项可以设置为 false。
android.enableJetifier=true
  1. 修改build.gradle中依赖库
    支持库映射表https://developer.android.google.cn/jetpack/androidx/migrate/artifact-mappings
    如:
implementation 'com.android.support:appcompat-v7:28.0.0'
→ implementation 'androidx.appcompat:appcompat:1.0.2'

implementation 'com.android.support:design:28.0.0'
→implementation 'com.google.android.material:material:1.0.0'
  1. 修改相关类的import
    将原来import的android.包删除,重新import新的androidx.包;
    如:
import android.support.v7.app.AppCompatActivity; 
→import androidx.appcompat.app.AppCompatActivity;
  1. 编译项目。如有问题,检查以上步骤重新编译。


(部分内容参考于网络,如有不妥,请联系删除~)

相关文章

网友评论

      本文标题:Android 10 之 适配AndroidX

      本文链接:https://www.haomeiwen.com/subject/tiygnhtx.html