Je sais vraiment maintenant pourquoi j’ai eu cette error
et comment puis-je le résoudre… .. En fait, je ne suis pas sûr de ce que j’ai fait juste avant d’avoir cette error
.
Erreur Msg: , error: valeur en double pour la ressource 'attr/font' avec config ". error: ressource définie précédemment ici
/Users/hyun/Desktop/Laftel-Android/app/build/intermediates/incremental/mergeDbugResources/merged.dir/values/values.xml Valeur en double pour la ressource 'attr/font' avec config ". ressource définie précédemment ici.
Java.util.concurrent.ExecutionException: com.Android.tools.appt2.Aapt2Exception: erreur AAPT2: vérification des détails L'exécution a échoué pour la tâche ': app :: mergeDebugResources' . Erreur: Java.utilconcurrentExcutionException: com.Android.tools.aapt2.Aapt2Exception: erreur AAPT2: consultez les journaux pour plus de détails.
support library 26 a ajouté un attribut de police à des éléments xml tels que TextView, etc. Dans mon cas, j’utilisais une bibliothèque avec des vues personnalisées et un attribut personnalisé app: font: ils se sont donc affrontés. Après avoir renommé l’attribut library en quelque chose d’autre (textFont), tout s’est à nouveau bien déroulé. Alors, utilisez-vous un attribut de police personnalisé quelque part? Avez-vous mis à jour gradle à supportLibrary 26 ou 27 récemment? Si vous ne pouvez pas remplacer le nom de l'attribut, essayez de revenir à 25
Il se peut que le concept qui crée des conflits avec la logique utilisée précédemment pour appliquer les polices personnalisées.
Précédemment
Nous avons utilisé le code ci-dessous pour créer l'attribut personnalisé de la police.
<declare-styleable name="CustomFont">
<attr name="font" format="string" />
</declare-styleable>
Ce que je change
Dans mon cas, c’était là le problème et je l’ai résolu en renommant le nom attr
<declare-styleable name="CustomFont">
<attr name="fontName" format="string" />
</declare-styleable>
Cette même chose peut s'appliquer si vous utilisez une bibliothèque tierce ou une vue personnalisée avec la propriété "font"
Selon suggestion de reverie_ss Veuillez vérifier votre res-> valeurs-> attrs.xml
Après avoir migré vers AndroidX, mon message d'erreur était
error: duplicate value for resource 'attr/progress' with config ''
et j'ai eu un attribut personnalisé défini pour une vue personnalisée comme suit:
<declare-styleable name="ProductionProgressItemView">
<attr name="progressTitle" format="string"/>
<attr name="progress" format="string"/>
<attr name="progressPercent" format="integer"/>
renommer progress en progressValue a résolu le problème.
J'utilise la bibliothèque de support 27.1.1 et targetSDKVersion vaut 27. Il y avait un conflit avec une autre bibliothèque dans mon cas. Ce sont les services de Google Play qui ajoutent également une bibliothèque de support, mais avec une version plus ancienne, il y a donc deux bibliothèques qui créent un problème.
Ajouter ceci dans le fichier build.gradle au niveau du projet
task clean(type: Delete) {
delete rootProject.buildDir
}
subprojects {
project.configurations.all {
resolutionStrategy.eachDependency { details ->
if (details.requested.group == 'com.Android.support'
&& !details.requested.name.contains('multidex') ) {
details.useVersion "26.1.0"
}
}
}
}
J'ai trouvé ceci ici link
essayez compileSdkVersion 25, alors tout ira bien. La bibliothèque de support 26 a ajouté un attribut de police à des éléments xml tels que TextView, etc. , tout va bien encore