Jetpack插件化学习之AndroidX--Android项目升级到AndroidX
注:文章内容翻译自官方文档。
AndroidX概述
AndroidX是Android团队用于在Jetpack中开发,测试,打包,版本和发布库的开源项目 。
AndroidX是对原始Android 支持库的重大改进 。与支持库一样,AndroidX与Android操作系统分开提供,并提供跨Android版本的向后兼容性。AndroidX通过提供功能奇偶校验和新库完全取代了支持库。此外,AndroidX还包括以下功能:
- AndroidX中的所有软件包都以字符串开头,位于一致的命名空间中androidx。支持库包已映射到相应的androidx.*包中。
- 与支持库不同,AndroidX软件包是单独维护和更新的。这些androidx包使用 从版本1.0.0开始的严格语义版本控制。您可以单独更新项目中的AndroidX库。
- 所有新的支持库开发都将在AndroidX库中进行。这包括维护原始支持库工件和引入新的Jetpack组件。
使用AndroidX
请参阅迁移到AndroidX以了解如何迁移现有项目。
如果要在新项目中使用AndroidX,则需要将compile SDK设置为Android 9.0(API级别28)或更高版本,并true在 gradle.properties文件中设置以下两个Android Gradle插件标志。
- android.useAndroidX:设置true为时,Android插件使用相应的AndroidX库而不是支持库。false如果未指定,则默认情况下为该标志 。
- android.enableJetifier:设置true为时,Android插件会自动迁移现有的第三方库,通过重写其二进制文件来使用AndroidX。false如果未指定,则默认情况下为该标志。
==迁移到AndroidX==
如果你的项目不是新项目(大部分情况都是这样)
使用Android Studio 3.2及更高版本,您可以通过从菜单栏中选择Refactor> Migrate to AndroidX
,快速迁移现有项目以使用AndroidX 。
如果您有任何尚未迁移到AndroidX名称空间的Maven依赖项,在project目录下 gradle.properties文件中设置以下两个标志时,Android Studio构建系统也会为您迁移这些依赖项:
android.useAndroidX=true
android.enableJetifier=true
要迁移不使用任何需要转换的依赖项的第三方库的现有项目,可以将android.useAndroidX标志设置为 true,将android.enableJetifier标志设置为false。
一般使用过这两种方式就可以完成Android->AndroidX的迁移了。
但是!!!可能会出现更种各样的问题。
在尝试了各种方法之后,不妨喝杯水,重启一下Studio。
有问题,联系我啊 !
[图片上传失败...(image-f6179d-1544073231183)]
网友评论