web-dev-qa-db-fra.com

Erreur lors de l'extraction du parent pour l'élément: aucune ressource trouvée ne correspond au nom donné 'Android: TextAppearance.Material.Widget.Button.Colored'

Aujourd'hui, je suis confronté à l'erreur mentionnée dans ce message: Erreur lors de l'extraction du parent pour l'élément: Aucune ressource trouvée ne correspond au nom donné 'Android: TextAppearance.Material.Mobile.Button.Borderless.Colored'

La chose amusante (et la différence) est que notre application a une production de 5 mois et que nous avons réalisé des centaines de versions et de fichiers APK à ce jour. Nous n'avons pas changé une seule ligne de code pendant une semaine (ni aucune version de la bibliothèque) et la construction a soudainement cessé de fonctionner avec cette erreur mentionnée.

Execution failed for task ':react-native-fbsdk:processReleaseResources'

X:\app\node_modules\react-native-fbsdk\Android\build\intermediates\res\merged\release\values-v24\values-v24.xml:3: AAPT: Error retrieving parent for item: No resource found that matches the given name 'Android:TextAppearance.Material.Widget.Button.Borderless.Colored'.
X:\app\node_modules\react-native-fbsdk\Android\build\intermediates\res\merged\release\values-v24\values-v24.xml:4: AAPT: Error retrieving parent for item: No resource found that matches the given name 'Android:TextAppearance.Material.Widget.Button.Colored'.    
X:\app\node_modules\react-native-fbsdk\Android\build\intermediates\res\merged\release\values-v24\values-v24.xml:3: error: Error retrieving parent for item: No resource found that matches the given name 'Android:TextAppearance.Material.Widget.Button.Borderless.Colored'.    
X:\app\node_modules\react-native-fbsdk\Android\build\intermediates\res\merged\release\values-v24\values-v24.xml:4: error: Error retrieving parent for item: No resource found that matches the given name 'Android:TextAppearance.Material.Widget.Button.Colored'.

En utilisant ces versions de bibliothèques (package.json):

...
"react": "15.3.2",
"react-native": "0.37.0",
...
"react-native-fbsdk": "~0.5.0",
...

Notre build.gradle (pas entier), qui a fonctionné jusqu'à maintenant:

    compileSdkVersion 24
    buildToolsVersion '24.0.3'
    defaultConfig {
        applicationId "xxx"
        minSdkVersion 16
        targetSdkVersion 23
        versionCode 14
        versionName "1.5.3"
        ndk {
            abiFilters "armeabi-v7a", "x86"
        }
    }

dependencies {
    compile project(':react-native-device-info')
    compile project(':react-native-maps')
    compile project(':realm')
    compile project(':react-native-vector-icons')
    compile project(':react-native-image-picker')
    compile project(':react-native-fs')
    compile project(':react-native-share')
    compile project(':react-native-Push-notification')
    compile project(':react-native-fbsdk')
    compile('com.google.Android.gms:play-services-gcm:9.4.0') {
        force = true;
    }
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile 'com.Android.support:appcompat-v7:23.0.1'
    compile 'com.facebook.react:react-native:+'
    compile 'com.fasterxml.jackson.core:jackson-annotations:2.2.3'
    compile 'com.fasterxml.jackson.core:jackson-core:2.2.3'
    compile 'com.fasterxml.jackson.core:jackson-databind:2.2.3'
}

Des idées s'il vous plaît?

13
Vojtech Gruchala

Enfin j'ai trouvé une solution. Après avoir lu toutes les réponses et les problèmes associés ( Facebook Sdk Android Error Building ) et avoir essayé de nombreuses choses (mise à jour des bibliothèques, dépendances, nombreuses modifications de version, etc.), j'ai réussi à reconstruire mon application. Ensuite, j'ai annulé tous les changements inutiles et il reste ce qui reste:

J'avais besoin d'ajouter 2 éléments (itérateur et ligne avec "force") dans mon fichier Android/build.gradle _ (pas Android/app/build.gradle):

allprojects {
    configurations.all {
       resolutionStrategy {
         eachDependency { DependencyResolveDetails details ->
           if (details.requested.group == 'com.facebook.react' && details.requested.name == 'react-native') {
             details.useVersion "0.37.0" // Your real React Native version here
           }
         }
         force 'com.facebook.Android:facebook-Android-sdk:4.22.1'
       }
    }
}

Merci pour tous les conseils quand même!

7
Vojtech Gruchala

Je pense que c'est le même problème que Facebook Sdk Android Error Building

Vous devez changer de

compile('com.facebook.Android:facebook-Android-sdk:4.+') 

à 

compile('com.facebook.Android:facebook-Android-sdk:4.22.1')

dans node_modules\react-native-fbsdk\Android\build.gradle

14
aFerrer

en fait, il y a un problème de dépendances J'ai été confronté de la même façon, mais je l'ai résolu en appliquant les modifications de correspondance de version suivantes: 

compileSdkVersion 24
buildToolsVersion '24.0.3'

compile 'com.Android.support:appcompat-v7:23.0.1'

assurez-vous que ces versions sont identiques à celles de l'API. Cela signifie que si vous utilisez 24 API pour construire, appcompat-v7 devrait être 24.0. + Quelque chose.

3
Aniruddh Parihar

La solution se trouve dans cette question Facebook Sdk Android Error Building

J'ai également créé un référentiel et fourni toutes ces modifications pour le faire fonctionner avec RN 0.42. Vous pouvez l'installer en tapant yarn add https://github.com/kidnapkin/react-native-fbsdk.git

2
Eugene Domotenko

Ce problème est survenu après la mise à jour des bibliothèques, l’ajout de dépendances, les changements de version, etc. 

  1. Allez sur Android/app/build.gradle

    Android {
      compileSdkVersion 25
      buildToolsVersion '25.0.3'
    
      defaultConfig {
        minSdkVersion 16
        targetSdkVersion 25
    

    }

  2. Allez à node_modules/your-package/Android/build.gradle

    Android {
      compileSdkVersion 25
      buildToolsVersion '25.0.3'
    
      defaultConfig {
       minSdkVersion 16
       targetSdkVersion 25
    

Si le problème ne sera pas encore résolu, vérifiez les autres packages de package.json

C'est tout. J'espère que ça aide

1
rafal_kaczynski

Je résous ce problème en modifiant uniquement le fichier Android/app/build.gradle . Vous devez modifier compileSdkVersion et buildToolsVersion comme suit.

Android {
  compileSdkVersion 25
  buildToolsVersion "25.0.1"
0
tharindu_b