web-dev-qa-db-fra.com

Erreur - Echec de la liaison avec une ressource Android (démon AAPT2 27.0.3 n ° 0)

J'ai cette erreur 

Je suis essayer de réinstaller Android studio et supprimer le dossier .gradle, une solution s'il vous plaît?  

    Error:FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:processDebugResources'.
> Android resource linking failed (AAPT2 27.0.3 Daemon #0)
  Command: C:\javasdk\build-tools\27.0.3\aapt2.exe link -I\
          C:\javasdk\platforms\Android-26\Android.jar\
          --manifest\



  C:\Users\Jalal D\.gradle\caches\transforms-1\files-1.1\fonticon-0.1.8.aar\2b09376fc14469ba65fc8e4d85c2eed1\res\values\values.xml:19:5-25:25: AAPT: error: resource Android:attr/fontVariationSettings not found.

  C:\Users\Jalal D\.gradle\caches\transforms-1\files-1.1\fonticon-0.1.8.aar\2b09376fc14469ba65fc8e4d85c2eed1\res\values\values.xml:19:5-25:25: AAPT: error: resource Android:attr/ttcIndex not found.

  error: failed linking references.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 1m 3s
40

Avait exactement le même problème. Résolvez-le en procédant comme suit: Recherchez et remplacez com.Android.support:support-v4:+ par com.Android.support:support-v4:27.1.0 sur la plateforme./Répertoire Android.

De plus, j'ai dû ajouter le code suivant aux fichiers plateformes/Android/app/build.gradle et plateformes/Android/build.gradle:

configurations.all {
resolutionStrategy {
    force 'com.Android.support:support-v4:27.1.0'
}}

Edité pour répondre "Où se trouve ce paramètre com.Android.support:support-v4:+?" ...

Le paramètre sera probablement (dans ce cas) dans l'un des fichiers .gradle de votre plugin dans le répertoire plate-forme/Android /, par exemple, dans mon cas, il s'agissait du plug-in starter-barcodescanner, il vous suffit donc de parcourir tous vos fichiers .gradle:

 enter image description here

Vérifiez les plates-formes/Android/build.gradle.

J'espère que cela t'aides.

33
RFourie

Remarque: Android Studio génère une quantité d'erreurs folles comme celle-ci si vous mettez à niveau les bibliothèques de support vers 28.0.0 et que votre compileSdkVersion n'est pas 28 également.

27
Daniel Wilson

La liaison des ressources Android a échoué error peut également apparaître si vous rencontrez une erreur dans l’une de vos ressources XML. Dans mon cas, j'utilisais deux fois la ligne suivante dans l'un de mes tirages XML dans un dossier pouvant être dessiné:

<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>

J'ai supprimé la ligne en double et l'erreur a disparu. L'erreur était un peu trompeuse:

La liaison avec les ressources Android a échoué Résultat:/Users/johndoe/Desktop/myapp/app/src/main/res/layout / activity_main . Xml: 2: error: ressource drawable/bg_main (ou com.example.myproject: drawable/bg_main) introuvable.

Selon l'erreur ci-dessus, la première chose à faire est de relire toutes les ressources pouvant être extraites auxquelles on accède dans le fichier activity_main car les chances sont plus grandes que vous trouviez l'erreur. Dans le pire des cas, vous pourriez finir par vérifier tous vos fichiers de ressources. 

18
Darush

Si vous utilisez Windows 10 et Android Studio 3.2, vous pouvez simplement vous rendre dans build.gradle de l'application et modifier la version.

Under dependencies, change version, and build/sync

6
Syed Raza

com.Android.support:support-v4 a récemment reçu une mise à jour et peut-être affecter le plug-in qui utilise la version mise à jour dans ses dépendances. Mais si vous ne pouvez pas trouver dans les dépendances (comme si vous utilisiez le plugin Crosswalk), il suffit de mettre ce code en haut de votre plugin gradle de code (inutile d'ajouter add.build.gradle).

configurations.all {
resolutionStrategy.force 'com.Android.support:support-v4:24.0.0'
}

Exemple d’emplacement pour insérer le code dans le module Crosswalk here

N'hésitez pas à éditer la version de com.Android.support (NE PAS UTILISER LE 28.0.0) car c'est le problème 

3
Ahmad Azam

Je l'ai résolu en ajoutant "@ + id /" avant tous mes identifiants.

c'est-à-dire "@ + id/your_item_id" 

2
Sajid2405

Il devrait y avoir une erreur dans les fichiers de ressources. Cela signifie qu'il peut y avoir une valeur d'attribut manquée. Parcourez les fichiers de ressources, corrigez-les et profitez du travail.

1
Razz

J'ai importé de nouvelles couleurs dans mon projet et j'ai eu le même problème. J'ai donc ouvert styles.xml et réaffecté des éléments aux couleurs en utilisant de nouveaux noms de couleurs. 

1
Oleksandr

J'ai eu le même problème, mais c'est parce que dans mes boutons layout_width/height j'ai oublié de mettre dp à la fin lors de leur édition. Ajout de dp et problème résolu: /

1
DontJudgeMe

Dans mon cas, j'ai accidentellement écrit:

app:displayViewTitle="@string/instructions_defineExtract_confirm_email"

Fait intéressant, Android Studio a été en mesure de naviguer dans la chaîne via CTRL + clic. Cela donnait simplement une erreur de temps de construction. Passer au standard "séparation de points" a fait le tour

app:displayViewTitle="@string/instructions.defineExtract.confirm.email"
1
Onat Korucu

Essayez de mettre à jour la dernière version de construction, la version cible et la version de compilation et mettez également à jour les dépendances mais ne fonctionne pas pour moi 

Dans mon cas changer <meta-items/> en <meta-data/> dans le manifeste fonctionne pour moi ...

J'espère que c'est utile pour quelqu'un ...

1
Lokesh

Trouvé l'une des raisons qui cause ce problème

Quand on essaie d'utiliser

chaîne, style, couleur, etc.,

dans le fichier manifeste qui est pas présent dans les valeurs (string.xml,style.xml,color.xml,etc,) alors ce type d'erreur se produit

0
Vishnu Magar

J'utilise Studio 3.3.1 Build à partir du 28 janvier.

Pour moi, le message "erreur de liaison des ressources Android échouée" pointait vers une ligne d'un fichier de mise en page utilisant ConstraintLayout qui fonctionnait correctement jusqu'à aujourd'hui, alors que le seul changement apporté à mon fichier de niveaux de niveaux d'application consistait à mettre à jour les versions de:

Android.Arch.navigation:navigation-fragment
Android.Arch.navigation:navigation-ui

de 1.0.0-rc01 à 1.0.0-rc02.

Le message d'erreur disait quelque chose sur le fait de ne pas reconnaître layout_constraintTop_toTopOf, ce qui est bien sûr ridicule, car il compilait assez bien depuis des mois.

Je suis déjà sur 28.0.3 des outils de construction et compileSdkVersion de 28. J'utilise androidx.appcompat partout depuis un moment (converti ce projet en mois en androidx).

Je suis d'abord passé par un projet propre (sans aide) et en invalidant le cache/le redémarrage (sans aide). La mise en page en question avait été définie à l’origine en utilisant

Composants <TextView>, <EditText> et <ImageView> (qui fonctionnaient bien jusqu'à ce jour).

Mais après avoir lu les réponses ci-dessus, je me suis dit que la confusion était peut-être causée ici. J'ai donc modifié la mise en page:

<androidx.appcompat.widget

versions de tous les différents composants. Pas de changement - toujours eu l'erreur.

J'ai ensuite supprimé le bloc <androidx.appcompat.widget.AppCompatTextView à l'origine de l'erreur de compilation. J'ai changé toutes les références à cela dans les autres widgets pour faire référence à "parent" à la place. A fait une marque. Cette fois, la compilation s’est terminée sans erreur .

Donc, quelque chose d'étrange dans cette définition de widget, je pensais .... voici ce qu'il était:

<androidx.appcompat.widget.AppCompatTextView
    Android:id="@+id/contact_firstname_label"
    Android:layout_width="0dp"
    Android:layout_height="wrap_content"
    Android:text="@string/contact_fname_label"
    Android:gravity="end"
    Android:textAppearance="@Android:style/TextAppearance.Material.Small"
    app:layout_constraintTop_toTopOf="parent"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintRight_toLeftOf="@+id/contact_detail_fname"
    app:layout_constraintBaseline_toBaselineOf="@+id/contact_detail_fname"/>

J'ai ensuite collé le bloc que j'avais précédemment coupé en Ctrl-V et j'ai remplacé les références par cet ID dans les autres composants qui le référencent dans la présentation. La compilation a échoué .

Je coupai à nouveau le bloc et le collai dans WordPad. Puis, en lisant le collage WordPad, je l’ai tapé de nouveau (c’est-à-dire que je n’ai pas copié/collé cette fois) - ligne par ligne, en effectuant un make sur le projet après avoir tapé la définition minimale, puis à nouveau ensuite mettre dans chaque nouvelle ligne. Chaque fois le projet compilé proprement!

Je ne sais pas quoi faire de cela. Peut-être un caractère invisible invisible était-il dans le fichier à l'origine?

0
tfrysinger

Le même problème s'est produit pour moi, mais avant d'obtenir cette erreur, mon application était en cours d'exécution. Donc, je viens d'annuler 2/3 fois. Et a encore changé. Et construire app.app a fonctionné avec succès.

0
Stubborn

Plusieurs raisons peuvent expliquer ce problème, principalement dans le fichier build.gradle au niveau ressource ou application.

Dans mon cas, une vue du fichier de ressources ne contenait pas la dépendance requise incluse dans le fichier build.gradle.

Veillez donc à inclure toutes les dépendances requises dans le fichier build.gradle. 

0
N. Fatma

J'avais un problème similaire, mais je suis sorti de la solution. Le problème était que vous utilisiez quelque chose dans la dépendance qui correspond au même domaine mais avec des versions différentes, assurez-vous qu'ils sont tous identiques.

0
Shubham Gupta Ggps

Je faisais face au même problème et il est résolu en supprimant les erreurs des fichiers de ressources comme le style, les fichiers de couleurs dans le dossier de valeurs .

 <style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar">
    <item name="Android:textColorPrimary">**@color/colorPrimary**</item>
    <item name="Android:textColorSecondary">**@color/colorPrimaryDark**</item>
</style>
0
Ravi

me sens si stupide - (pour une raison quelconque) j’avais un fichier XML vide dans un dossier pouvant être dessiné. et AS ont produit des dizaines d’erreurs sans rapport>> <

donc, mon conseil général serait le même - vérifiez brièvement chaque fichier de ressources.

0
mjollneer

Modification de la version de la dernière bibliothèque de support activée (28.0.0) par précédent (27.1.0) , l’erreur Android Resource Linking Failed a disparu.

Il convient de noter que la version 27.1.0 est le maximum autorisé dans nos implémentations, ce qui fonctionne, mais vous pouvez utiliser une version plus ancienne si vous le souhaitez. Et cela doit être utilisé dans toutes les dépendances commençant par la chaîne com.Android.support:

project/app/build.gradle

implementation "com.Android.support:appcompat-v7:$rootProject.supportLibraryVersion"
implementation "com.Android.support:support-v4:$rootProject.supportLibraryVersion"

projet/build.gradle

ext {
    supportLibraryVersion= '27.1.0'
}

Ensuite, Sync Project avec Gradle Files

GL

0
IT Developers

Cela peut sembler banal, mais pour moi Build > Clean Project a corrigé cette erreur sans autre modification.

0
mihai1990

Problème résolu pour moi en remplaçant compileSdkVersion 23 par compileSdkVersion 28 dans build.gradle (Project: build).

0
Jaime Montoya

J'ai rencontré le même problème après avoir ajouté la dépendance suivante:

implementation 'com.evernote:Android-state:1.4.1'
annotationProcessor 'com.evernote:Android-state-processor:1.4.1'

Et la raison en était que la dernière version d’evernote utilise des dépendances d’AndroidX, alors que j’avais pris en charge la version de bibliothèque 27.1.1 dans mon projet. Il existait donc une option permettant de mettre à niveau les bibliothèques de support vers 28.0.0, comme le suggèrent les autres réponses, mais c'était un peu délicat pour un grand projet avec de nombreuses vues personnalisées. J'ai donc résolu le problème en rétrogradant la version d'evernote vers la version 1.3.1.

0
anro

Pour moi, l'erreur est apparue après la modification de mon icône de lanceur à l'aide de Asset Studio. Il s'avère que le fichier ic_launcher_foreground.xml généré ne comportait pas la ligne suivante en haut du fichier: <?xml version="1.0" encoding="utf-8"?>

0
A Droid

Vérifiez votre version du plugin Gradle. Essayez de le rétrograder si vous avez mis à jour une version plus récente juste avant l’apparition de ce problème. Allez à Fichier -> Structure du projet. Passer à la version précédente.

0
JeffinJ