错误崩溃实现'com.android.support:appcompat-v7:28.0.0'

时间:2019-07-17 03:52:21

标签: java android android-studio

这是我的依赖项(模块:应用程序)

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.

2 个答案:

答案 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 libraryandroidx 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