Android Studio项目适配AndroidX(Android 9.0)的方法步骤
作者:小红妹 发布时间:2022-10-30 12:01:03
标签:Android,Studio,AndroidX
说在前面:
老项目、大项目适配Android X 注意了,一定要谨慎、谨慎、再谨慎。项目中用到的第三方库多的话会很麻烦,有些第三方库还没有适配Android X。
适配Android X的两种情况:一种是老项目适配Android X ,另外一种是新项目要求适配Android 9.0
硬核要求
Android studio 版本升级到3.2.0 以上的版本,
distributionUrl的版本升级为 4.10.1以上
targetSdkVersion 28
gradle 插件的版本升级为 3.2.0以上
classpath 'com.android.tools.build:gradle:3.2.0'
这里以AS 3.4为例
第一步:
新项目,这步可以跳过。
compileSdkVersion 28
defaultConfig {
applicationId "gangqing.pu.xmxidaq"
minSdkVersion 19
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
第二步:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.4.0'
classpath 'com.jakewharton:butterknife-gradle-plugin:10.1.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
google()
jcenter()
maven { url "https://jitpack.io" }
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
第三步:
在gradle.properties 中加入如下代码,表示支持Android X
android.useAndroidX=true
android.enableJetifier=true
第四步:
Android Studio ----> Refactor----> Migrate to androidx,,一键转为 androidX
第五步:
支持Java 1.8
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
第六步:
修改布局,比如:ConstraintLayout
变化之前 | AndroidX |
---|---|
<android.support.constraint.ConstraintLayout | <androidx.constraintlayout.widget.ConstraintLayout |
注意:如果是老项目适配AndroidX,没有找到ConstraintLayout 的话,那么还需要在中添加如下代码
dependencies {
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
}
第四步之后,
<android.support.constraint.ConstraintLayout
变为<androidx.constraintlayout.ConstraintLayout 这时你需要修改为
<androidx.constraintlayout.widget.ConstraintLayout |
来源:https://blog.csdn.net/L_201607/article/details/89842468


猜你喜欢
- HTTP请求,在日常开发中,还是比较常见的,今天给大家分享HttpUtils如何使用。阅读本文,你将收获:简单总结HTTP请求常用配置;Ja
- 本文实例讲述了Java求解两个非负整数最大公约数算法。分享给大家供大家参考,具体如下:代码功能:1.Java实现(完整源码附测试用例);2.
- 写Java程序时经常碰到要读如txt或写入txt文件的情况,但是由于要定义好多变量,经常记不住,每次都要查,特此整理一下,简单易用,方便好懂
- 废话不多说了,直接给大家贴代码了,具体代码如下所示:html代码如下:<body><input id="file
- 最新更新的Flyme6整体效果不错,动画效果增加了很多了,看了看flyme6的Viewpager指示器,觉得有点意思,就模仿写了一下,整体效
- 本文实例为大家分享了Java实现坦克大战小游戏的具体代码,供大家参考,具体内容如下创作背景:n年前的学期末课题设计,从b站上学的,一个代码一
- 做Java编程,难免会遇到多线程的开发,但是JDK8这个CompletableFuture类很多开发者目前还没听说过,但是这个类实在是太好用
- 本文实例为大家分享了Android用户注册界面的设计,供大家参考,具体内容如下I. 实例目标 设计一个用户注册界面,在其中要使用到一些基础控
- 这篇文章主要介绍了SpringMVC Mybatis配置多个数据源并切换代码详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一
- 1.什么是线程安全性当多个线程访问某个类时,不管运行时环境采用何种调用方式或者这些线程将如何交替执行,并且在主调代码中不需要任何额外的同步或
- 功能:解决web站点的登录,权限验证,授权等功能优点:在不影响站点业务代码,可以权限的授权与验证横切到业务中1、要添加的依赖<!--t
- Java反射机制深入理解一.概念 反射就是把Java的各种成分映射成相应的Java类。Class类的构造方法是private,由JVM创建。
- 本文实例讲述了C#实现跨线程操作控件方法,分享给大家供大家参考。具体实现方法如下:由于在.net平台下Winform、wpf禁止跨线程直接访
- 使用Postman传递arraylist数据给springboot起因:需要做一个批量删除的功能,后台接收一个ArrayList ids 。
- 如下所示:public static String reThreeStr(String ss){boolean result= ss.mat
- 如下所示:package com.lstc.test;public class TestDemo3 {String str = new St
- 本地jvm执行flink带web ui使用StreamExecutionEnvironment executionEnvironment =
- 本文接上文“java反射之方法反射的基本操作方法”,利用反射了解下java集合中泛型的本质1、初始化两个集合,一个使用泛型,一个不使用Arr
- @Order控制配置类/AOP/方法/字段的加载顺序1.AOP加载顺序 @Component &nbs
- 首先在枚举类中 定义state 和定义的抽象方法。public enum JavaPlatformState { // 定义st