L'utilisation de ce que l'on appelle Material Design 2.0 de Google nécessite l'ajout de
implementation 'com.google.Android.material:material:1.0.0-rc01'
dans l'application Gradle qui comprend également
implementation 'com.Android.support:appcompat-v7:28.0.0-rc02'
qui montre des conflits
Voici ce que dit le journal
Manifest merger failed : Attribute application@appComponentFactory value=(Android.support.v4.app.CoreComponentFactory) from [com.Android.support:support-compat:28.0.0-rc02] AndroidManifest.xml:22:18-91
is also present at [androidx.core:core:1.0.0-rc01] 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.
Même après avoir ajouté cela au manifeste, cela montre La fusion du manifeste a échoué avec une erreur multiple
Remplacez toutes les dépendances Android par celles d’androidx dans le fichier build.gradle.
Par exemple:
implementation 'androidx.appcompat:appcompat:1.0.0'
implementation 'androidx.constraintlayout:constraintlayout:2.0.0-alpha2'
implementation 'androidx.annotation:annotation:1.0.0'
androidTestImplementation 'androidx.test:runner:1.1.0-alpha3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0-alpha4'
Suggestion: ajoutez '
tools:replace="Android:appComponentFactory"
' à élément àAndroidManifest.xml
: 5: 5-19: 19 à remplacer.
Si vous avez ajouté le tools:replace="Android:appComponentFactory"
et avez toujours des problèmes en le corrigeant, créez un nouveau projet, copiez-collez les codes et les mêmes dépendances. Après cela, cela devrait être corrigé j'espère.
Si cela ne résout pas le problème, essayez d'ajouter ces deux éléments:
tools:replace="Android:appComponentFactory"
Android:appComponentFactory="whateverString"
Dans la balise AndroidManifest.xml
> <application
bien sûr.
J'avais un problème similaire. Deux lignes dans le fichier gradle.properties:
Android.useAndroidX=true
Android.enableJetifier=true
Lien à suivre: https://developer.Android.com/topic/libraries/support-library/androidx-overview#new-project
Pour résoudre ce problème, vous devez ajouter l'espace de noms tools et appliquer le fichier attributs suggérés à l'élément d'application recommandé par l'EDI.
<manifest xmlns:Android="http://schemas.Android.com/apk/res/Android" xmlns:tools="http://schemas.Android.com/tools"
package="your.package.uri">
<application
Android:allowBackup="true"
Android:icon="@mipmap/ic_launcher"
Android:label="@string/app_name"
Android:roundIcon="@mipmap/ic_launcher_round"
Android:supportsRtl="true"
Android:theme="@style/AppTheme"
tools:replace="Android:appComponentFactory"
Android:appComponentFactory="androidx">
Remplacer dans les dépendances De:
implementation 'com.google.Android.material:material:1.0.0-rc01'
à:
implementation 'com.Android.support:design:28.0.0'
Cette erreur est courante de nos jours:
Lorsque nous obtenons ce type d'erreur: Lorsque la bibliothèque est mise à jour et fournit une utilisation d'AndroidX mais que nous utilisons l'ancienne.
Vous pouvez suivre les étapes pour résoudre ceci:
Avec Android Studio 3.2 et versions ultérieures, vous pouvez migrer rapidement un fichier projet existant pour utiliser AndroidX en sélectionnant Refactor> Migrer vers AndroidX dans la barre de menus.
Remarque: pour migrer un projet existant qui n'utilise aucun tiers bibliothèques avec des dépendances nécessitant une conversion, vous pouvez définir le
Android.useAndroidX
drapeau à true et le drapeauAndroid.enableJetifier
à faux.
CETTE ETAPE FAIT TOUT AUTOMATIQUEMENT QUE TOUTES LES REPONSES DIT DIRE DE FAIRE MANUELLEMENT
Même si vous rencontrez une autre erreur, telle que la compilation au moment de l'exécution a échoué, alors:
OR
J'espère que cela aidera à tous ... Merci.