I updated 'android.support:appcompat-v7' to 28.0.0
.
But it brought an error from the build.
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:8:5-23:19 to override.
Then I get this error in my Logcat:
Manifest merger failed
my app.gradle:
configurations.all {
resolutionStrategy.force 'com.android.support:design:28.0.0'
resolutionStrategy.force "com.android.support:support-v4:28.0.0"
resolutionStrategy.force "com.android.support:support-media-compat:28.0.0"
}
...
dependencies {
implementation 'com.android.support:multidex:1.0.1'
// Our dependencies
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:appcompat-v7:28.0.0'
}
how do I fix it?
I need your solutions.
Thank you in advance.
I found a solution through my search by referring to @MehulSolanki answer.
I add
tools:replace="android:appComponentFactory"
android:appComponentFactory="whateverString"
in my on AndroidManifest.xml
and update com.android.tools.build:gradl:
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
}
And add this in your gradle.properties file
android.useAndroidX=true
android.enableJetifier=true
ERROR: [TAG] Failed to resolve variable '${animal.sniffer.version}'
ERROR: [TAG] Failed to resolve variable '${junit.version}'
In case of above error
error: package android.support.annotation does not exist error: cannot find symbol class Nullable
In case of above error
Add implementation 'androidx.annotation:annotation:1.1.0'
change import android.support.annotation.Nullable;
=> androidx.annotation.Nullable;
change import android.support.annotation.NonNull;
=> androidx.annotation.NonNull;
Compile version and target version should be 28.
Este artigo é coletado da Internet.
Se houver alguma infração, entre em [email protected] Delete.
deixe-me dizer algumas palavras