androidx和v4包资源冲突解决方法

本文介绍了在Android开发中遇到的资源冲突错误,具体表现为Duplicate Classes问题,涉及androidx.core与com.android.support库的冲突。解决方法包括在gradle.properties文件中启用AndroidX并使用Jetifier工具自动迁移依赖到AndroidX。通过这两个步骤,可以解决不同库中相同类的冲突问题,确保项目正常编译。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.资源冲突会报如下错误

Execution failed for task ':app:checkDebugDuplicateClasses'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.CheckDuplicatesRunnable
   > Duplicate class android.support.v4.app.INotificationSideChannel found in modules core-1.3.1-runtime (androidx.core:core:1.3.1) and support-compat-25.2.0-runtime (com.android.support:support-compat:25.2.0)
     Duplicate class android.support.v4.app.INotificationSideChannel$Stub found in modules core-1.3.1-runtime (androidx.core:core:1.3.1) and support-compat-25.2.0-runtime (com.android.support:support-compat:25.2.0)
     Duplicate class android.support.v4.app.INotificationSideChannel$Stub$Proxy found in modules core-1.3.1-runtime (androidx.core:core:1.3.1) and support-compat-25.2.0-runtime (com.android.support:support-compat:25.2.0)
     Duplicate class android.support.v4.os.IResultReceiver found in modules core-1.3.1-runtime (androidx.core:core:1.3.1) and support-compat-25.2.0-runtime (com.android.support:support-compat:25.2.0)
     Duplicate class android.support.v4.os.IResultReceiver$Stub found in modules core-1.3.1-runtime (androidx.core:core:1.3.1) and support-compat-25.2.0-runtime (com.android.support:support-compat:25.2.0)
     Duplicate class android.support.v4.os.IResultReceiver$Stub$Proxy found in modules core-1.3.1-runtime (androidx.core:core:1.3.1) and support-compat-25.2.0-runtime (com.android.support:support-compat:25.2.0)
     Duplicate class android.support.v4.os.ResultReceiver found in modules core-1.3.1-runtime (androidx.core:core:1.3.1) and support-compat-25.2.0-runtime (com.android.support:support-compat:25.2.0)
     Duplicate class android.support.v4.os.ResultReceiver$1 found in modules core-1.3.1-runtime (androidx.core:core:1.3.1) and support-compat-25.2.0-runtime (com.android.support:support-compat:25.2.0)
     Duplicate class android.support.v4.os.ResultReceiver$MyResultReceiver found in modules core-1.3.1-runtime (androidx.core:core:1.3.1) and support-compat-25.2.0-runtime (com.android.support:support-compat:25.2.0)
     Duplicate class android.support.v4.os.ResultReceiver$MyRunnable found in modules core-1.3.1-runtime (androidx.core:core:1.3.1) and support-compat-25.2.0-runtime (com.android.support:support-compat:25.2.0)

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

表示资源重复,不知调用androidx包下面的,还是v4包下面的

2、解决方法

2.1 在gradle.properties中只添加了android.useAndroidX=true(表示当前项目启用 AndroidX)

2.2 添加android.enableJetifier=true(表示将依赖包也迁移到AndroidX,将项目中用到的第三方库中的support引用转为androidx引用) 即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值