您现在的位置是:网站首页> Android

迁移到AndroidX 从android sdk 28开始

  • Android
  • 2021-06-22
  • 757人已阅读
摘要

如果新建的是andriod sdk 29的工程

apply plugin: 'com.android.application'


android {

    compileSdkVersion 29

    ...

}

什么时候需要迁移android支持库到androidx

现在(2020年1月15日)新建的AS工程,默认用的compileSdkVersion 29,这要求必须用androidx而不是android.support:gradle直接报编译错误。

我不想降级compileSdkVersion到27,虽然我知道这很可能是可以解决问题的。为什么不肯将就一下?因为androidx其实就是为了解决android支持库的v4和v7等一系列头疼的版本号的问题的。用androidx,代表未来。持续用过时的技术,尤其是google加持的技术,没有什么好下场的。

怎么从android支持库迁移到androidx

我们不需要手动修改app的build.gradle中每一个dependencies,Android Studio还没有那么傻缺。

步骤1:gradle配置
gradle.properties中添加:

android.useAndroidX=true
android.enableJetifier=true

1.png

步骤2:自动迁移dependencies
Android Studio菜单栏->Refactor->Migrate to AndroidX

2.png

会提示确认是否refactor(重构),选择do refactor,过一会儿就好了。

步骤3:Java代码迁移到androidx

找到各种import,比如:

import android.support.annotation.NonNull;

import android.support.annotation.Nullable;

import android.support.v4.app.ActivityCompat;

import android.support.v7.app.AlertDialog;

import android.support.v7.app.AppCompatActivity;

这几句现在是报错状态,移除它,然后重新alt+enter来导入。


Top