0
votes

J'obtiens l'erreur "Dépendances AndroidX" avec android.useAndroidX activé

J'obtiens l'erreur suivante en essayant de créer mon application Android:

Tâche: application: mergeDebugResources FAILED

ÉCHEC: la construction a échoué avec une exception.

  • Erreur: l'exécution de la tâche «: app: mergeDebugResources» a échoué.

Ce projet utilise les dépendances AndroidX, mais la propriété 'android.useAndroidX' n'est pas activée. Définissez cette propriété sur true dans le fichier gradle.properties et réessayez. Les dépendances AndroidX suivantes sont détectées: androidx.versionedparcelable: versionedparcelable: 1.0.0, androidx.slidingpanelayout: slidespanelayout: 1.0.0, androidx.fragment: fragment: 1.0.0, androidx.core: core: 1.0.0, androidx.customview : vue personnalisée: 1.0.0, androidx.swiperefreshlayout: swiperefreshlayout: 1.0.0, androidx.interpolator: interpolateur: 1.0.0, androidx.loader: loader: 1.0.0, androidx.drawerlayout: tiroirlayout: 1.0.0, androidx.viewpager : viewpager: 1.0.0, androidx.collection: collection: 1.0.0, androidx.localbroadcastmanager: localbroadcastmanager: 1.0.0, androidx.lifecycle: lifecycle-common: 2.0.0, androidx.arch.core: core-common: 2.0 .0, androidx.annotation: annotation: 1.0.0, androidx.lifecycle: lifecycle-livingata: 2.0.0, androidx.legacy: legacy-support-core-ui: 1.0.0, androidx.lifecycle: lifecycle-viewmodel: 2.0 .0, androidx.lifecycle: cycle de vie-vécu-core: 2.0.0, androidx.legacy: legacy-support-v4: 1.0.0, androidx.media:media:1.0.0, androidx.arch.core: core-runtime : 2.0.0, androidx.legacy: legacy-suppo rt-core-utils: 1.0.0, androidx.documentfile: documentfile: 1.0.0, androidx.cursoradapter: cursoradapter: 1.0.0, androidx.lifecycle: lifecycle-runtime: 2.0.0, androidx.coordinatorlayout: coordinatorlayout: 1.0. 0, androidx.asynclayoutinflater: asynclayoutinflater: 1.0.0, androidx.print: impression: 1.0.0

J'ai modifié le fichier gradle.properties du projet et défini "android.userAndroidX" sur true. Mais à chaque fois que j'essaye de reconstruire, cela revient automatiquement à faux. Y a-t-il une chance que gradle.properties soit écrasé par une autre tâche pendant la construction?

Merci!


0 commentaires

5 Réponses :


0
votes

Ajouter à gradle.properties:

android.useAndroidX=true
android.enableJetifier=true

Dans AndroidStudio, cliquez sur: Fichier-> Invalidate Cashes / Restart -> Invalidate and Restart


3 commentaires

Merci pour votre réponse. Je le règle directement sur true, mais il est modifié à chaque fois que j'essaye de construire. Je n'ai pas installé AndroidStudio. Je construis via la ligne de commande.


Je ne suis pas sûr de la cause du problème, ce blog peut vous aider.


Vous pouvez les modifier dans les plates-formes / android / cordova / lib / configGradlePropertiesParser.j‌ dans les objets this._defaults



3
votes

Vous utilisez probablement cordova-android@8 (tapez cordova platform ls pour trouver les versions de plate-forme dans votre projet).

Vous avez donc 2 options:

  1. Mise à jour vers cordova-android@9 qui prend implicitement en charge AndroidX:
    cordova plugin add cordova-plugin-androidx-adapter
  1. Ajoutez cordova-plugin-androidx à votre projet Cordova, qui définit de manière persistante les indicateurs natifs AndroidX pour cordova-android@8 :
    cordova plugin add cordova-plugin-androidx

Si, après avoir ajouté l'un de ces éléments, votre projet ne parvient toujours pas à se construire, c'est peut-être parce qu'il contient des plugins Cordova dont le code Android natif fait référence à l'ancienne bibliothèque de support Android (dont AndroidX est le successeur). Pour résoudre ce problème, vous pouvez ajouter cordova-plugin-androidx-adapter à votre projet qui corrigera dynamiquement le code source de ces plugins pour les migrer vers AndroidX:

    cordova platform rm android && cordova platform add android@9


2 commentaires

Cela a définitivement résolu mon problème. Merci beaucoup!!


Super, heureux de vous aider! Veuillez accepter ceci comme la bonne réponse pour le bénéfice des autres utilisateurs.



0
votes

Vous pouvez essayer cordova prepare android si vous utilisez le dernier cordova, il corrigera vos fichiers source et mettra également à jour gradle.properties


0 commentaires

0
votes

Ouvrez d'abord les scripts de votre projet gradle >> puis ouvrez gradle.properties Et enfin collez ce code de deux lignes

android.useAndroidX=true

android.enableJetifier=true

entrez la description de l'image ici


0 commentaires

0
votes
cordova plugin add cordova-plugin-androidx

cordova plugin add cordova-plugin-androidx-adapter

0 commentaires