react-native-fbsdk error: No resource found that matches the given name: attr 'android:keyboardNavigationCluster'

蓝咒 提交于 2019-11-26 08:28:03

问题


In my react-native project in android/app/build.gradle i have

...
compileSdkVersion 26
    buildToolsVersion \"26.0.1\"

    defaultConfig {
        applicationId \"...\"
        minSdkVersion 16
        targetSdkVersion 26
        versionCode 1
        versionName \"1.0\"
        ndk {
            abiFilters \"armeabi-v7a\", \"x86\"
        }
    }

...

dependencies {
    compile project(\':react-native-fbsdk\')
    compile project(\':react-native-vector-icons\')
    compile project(\':react-native-splash-screen\')
    compile project(\':react-native-spinkit\')
    compile project(\':react-native-orientation\')
    compile project(\':react-native-maps\')
    compile project(\':react-native-android-sms-listener\')
    compile fileTree(dir: \"libs\", include: [\"*.jar\"])
    compile \"com.android.support:appcompat-v7:26+\"
    compile \"com.android.support:design:26+\"
    compile \"com.android.support:recyclerview-v7:26+\"
    compile \"com.android.support:cardview-v7:26+\"
    compile \"com.facebook.react:react-native:+\"  // From node_modules
    compile(\"com.crashlytics.sdk.android:crashlytics:2.8.0@aar\") {
        transitive = true;
    }
}
...

but I always get

<mypath> .../node_modules/react-native-fbsdk/android/build/intermediates/res/merged/release/values-v26/values-v26.xml:15:21-54: AAPT: No resource found that matches the given name: attr \'android:keyboardNavigationCluster\'.

<mypath> .../node_modules/react-native-fbsdk/android/build/intermediates/res/merged/release/values-v26/values-v26.xml:15: error: Error: No resource found that matches the given name: attr \'android:keyboardNavigationCluster\'.


:react-native-fbsdk:processReleaseResources FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task \':react-native-fbsdk:processReleaseResources\'.
> com.android.ide.common.process.ProcessException: Failed to execute aapt

回答1:


Go to React-Native Project : android/build.gradle file and restrict fbsdk Version to 4.28.0.

allprojects {
    repositories {
        ...
        configurations.all {
            resolutionStrategy {
                force 'com.facebook.android:facebook-android-sdk:4.28.0'
            }
        }
    }
}

If you have another error like below:

Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Colored'`.

You can try:

allprojects {
    repositories {
        ...
        configurations.all {
            resolutionStrategy {
                force 'com.facebook.android:facebook-android-sdk:4.22.1'
            }
        }
    }
}

Source: rafaesc




回答2:


you go to YOUR_PROJECT/node_modules/react-native-fbsdk/android/build.gradle

looking for line 19:

dependencies {
    compile 'com.android.support:appcompat-v7:25.0.0'
    compile 'com.facebook.react:react-native:+' // support react-native-v0.22-rc+
    compile('com.facebook.android:facebook-android-sdk:4.+')
}

change compile('com.facebook.android:facebook-android-sdk:4+') to compile('com.facebook.android:facebook-android-sdk:4.28.0')

It work for me



来源:https://stackoverflow.com/questions/47757074/react-native-fbsdk-error-no-resource-found-that-matches-the-given-name-attr-a

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!