问题描述:
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:21:5-159:19 to override.
问题原因:
Androidx与Android库共存问题
解决方案:
方案一:
Refactor -》 Migrate to Androidx。改动影响较大,后期补充更新。
方案二:
装换成Android Support。
1. 查看哪些库依赖了Androidx,执行gradlew :app:dependencies
+--- com.jakewharton:butterknife:10.1.0
| \--- com.jakewharton:butterknife-runtime:10.1.0
| +--- com.jakewharton:butterknife-annotations:10.1.0
| | \--- androidx.annotation:annotation:1.0.0
| \--- androidx.core:core:1.0.0
| +--- androidx.annotation:annotation:1.0.0
| +--- androidx.collection:collection:1.0.0
| | \--- androidx.annotation:annotation:1.0.0
| +--- androidx.lifecycle:lifecycle-runtime:2.0.0
| | +--- androidx.lifecycle:lifecycle-common:2.0.0
| | | \--- androidx.annotation:annotation:1.0.0
| | +--- androidx.arch.core:core-common:2.0.0
| | | \--- androidx.annotation:annotation:1.0.0
| | \--- androidx.annotation:annotation:1.0.0
| \--- androidx.versionedparcelable:versionedparcelable:1.0.0
| +--- androidx.annotation:annotation:1.0.0
| \--- androidx.collection:collection:1.0.0 (*)
2. 回退到不依赖androidx的版本。