这是我的依赖项(模块:应用程序)
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation 'com.google.android.gms:play-services:12.0.1'
}
添加实现'com.google.android.gms:play-services:12.0.1'后,同步模块:app始终在实现'com.android.support:appcompat-v7:28.0.0'上出错
错误:
Manifest merger failed : Attribute application@appComponentFactory value=(android.support.v4.app.CoreComponentFactory) from [com.android.support:support-compat:28.0.0] AndroidManifest.xml:22:18-91
is also present at [androidx.core:core:1.0.0] AndroidManifest.xml:22:18-86 value=(androidx.core.app.CoreComponentFactory).
Suggestion: add 'tools:replace="android:appComponentFactory"' to <application> element at AndroidManifest.xml:5:5-19:19 to override.
答案 0 :(得分:0)
如何通过选择Refactor > Migrate to AndroidX
迁移到AndroidX并让重构完成工作
似乎您不想迁移到AndroidX,但您应该尝试一下,因为android支持28.0.0是最新版本,而android从现在开始只会更新androidx。
https://developer.android.com/topic/libraries/support-library/revisions#28-0-0
这是Support Library 28.0.0的稳定版本,适用于生产。这将是android.support包装下的最后一个功能版本,鼓励开发人员迁移到AndroidX。
答案 1 :(得分:0)
您正在一个项目中同时使用support library
和androidx library
,这就是问题所在。
将支持库更改为首选的AndroidX库。
implementation 'androidx.appcompat:appcompat:1.1.0-rc01'
implementation 'androidx.constraintlayout:constraintlayout:2.0.0-beta2'
testİmplementation 'junit:junit:4.13-beta-3'
androidTestİmplementation 'androidx.test:runner:1.3.0-alpha01'
androidTestİmplementation 'androidx.test.espresso:espresso-core:3.3.0-alpha01'
等...
您还可以从Android Studio本身迁移到AndroidX
只需转到重构>迁移到AndroidX>迁移
有关迁移检查的更多信息,this