android:enableJetifier=true 再学习

当我们遇到类似这种问题

js 复制代码
connectivity_plus:debugRuntimeClasspath` contains AndroidX dependencies, but the `android.useAndroidX` property is not enabled, which may cause runtime issues.
     Set `android.useAndroidX=true` in the `gradle.properties` 

我们一般会直接添加如下的配置 但是一直没有深究这两个属性的意义

js 复制代码
android.useAndroidX=true      
android.enableJetifier=true

android.useAndroidX=true 这个属性执行项目开启AndroidX

android.enableJetifier=true 的作用

js 复制代码
当启用该配置后,Gradle 会在构建过程中对所有第三方库(包括本地库和远程依赖)进行字节码转换:
把库中引用的 android.support.xxx 类自动替换为对应的 androidx.xxx 类。
把库的 build.gradle 中声明的旧版 Support 库依赖(如 com.android.support:support-v4)自动替换为 AndroidX 依赖(如 androidx.core:core)。

但是如果有如下情况还是需要手动去修改:

js 复制代码
Jetifier 主要处理字节码和依赖声明,但某些特殊情况可能转换失败:
第三方库中通过反射动态引用 android.support 类(如 Class.forName("android.support.v4.app.Fragment"))。
资源文件(如 XML)中硬编码旧版类名(如自定义 View 的全类名)。
此时需要手动修改,或联系库作者升级到 AndroidX 版本。
相关推荐
传奇开心果编程6 小时前
【Flutter入门练中学】第2课:布局系统
学习·flutter·ui
BoomHe6 小时前
Android Framework 文件应用移植到 AndroidStudio
android
传奇开心果编程8 小时前
【Jetpack Compose基础语法学与练】第8课 rememberSaveable,页面旋转/系统重建保留状态
android·学习·ui·kotlin·android jetpack
>Andre<8 小时前
UFS5.0标准中文全译·卷一:范围、术语与架构
android·linux·嵌入式硬件
事圆则缓9 小时前
Java 8 Lambda、Stream、Optional 与 Android 边界:从回调语法到运行时兼容
android·java
mmsx9 小时前
Android 地图十万要素不卡顿:空间网格 + 渐进式加载的移动端实践
android·大数据·opengl
Godikov11 小时前
Android 工业终端保活实战:前台服务 + 开机自启 + 更新自启的三重保障
android
字节暗面11 小时前
SO加固强度怎么量化?腾讯ACE与FairGuard静态分析实测
android·逆向
君赏11 小时前
FlutterPatch:把 Shorebird 热更新的控制面搬回自己服务器
flutter
终端安全笔记12 小时前
描述文件、企业证书、MDM 不是三个名字,是三层
android·ios·智能手机