주어진 이름과 일치하는 리소스를 찾을 수 없습니다 : attr ‘android : keyboardNavigationCluster’. 지원 라이브러리 26.0.0으로 업데이트 할 때 업데이트하는 동안이 문제가 발생했습니다 .

최신 지원 라이브러리 버전 26.0.0 ( https://developer.android.com/topic/libraries/support-library/revisions.html#26-0-0 )으로 업데이트하는 동안이 문제가 발생했습니다 .

오류 : (18, 21) 주어진 이름과 일치하는 리소스를 찾을 수 없습니다 : attr ‘android : keyboardNavigationCluster’.

/.../app/build/intermediates/res/merged/beta/debug/values-v26/values-v26.xml
Error:(15, 21) No resource found that matches the given name: attr 'android:keyboardNavigationCluster'.
Error:(18, 21) No resource found that matches the given name: attr 'android:keyboardNavigationCluster'.
Error:(15, 21) No resource found that matches the given name: attr 'android:keyboardNavigationCluster'.
Error:(18, 21) No resource found that matches the given name: attr 'android:keyboardNavigationCluster'.
Error:Execution failed for task ':app:processBetaDebugResources'.

com.android.ide.common.process.ProcessException : aapt를 실행하지 못했습니다

파일은 지원 라이브러리에서 가져옵니다.

<style name="Base.V26.Widget.AppCompat.Toolbar" parent="Base.V7.Widget.AppCompat.Toolbar">
    <item name="android:touchscreenBlocksFocus">true</item>
    <item name="android:keyboardNavigationCluster">true</item>
</style>

우리는 다음 버전을 사용하고 있습니다 :

ext.COMPILE_SDK_VERSION = 26
ext.BUILD_TOOLS_VERSION = "26.0.1"

ext.MIN_SDK_VERSION = 17
ext.TARGET_SDK_VERSION = 26
ext.ANDROID_SUPPORT_LIBRARY_VERSION = "26.0.0"
ext.GOOGLE_PLAY_SERVICES_LIBRARY_VERSION = "11.0.2"

compile 'com.android.support:appcompat-v7:' + ANDROID_SUPPORT_LIBRARY_VERSION
compile 'com.android.support:design:' + ANDROID_SUPPORT_LIBRARY_VERSION
compile 'com.android.support:recyclerview-v7:' + ANDROID_SUPPORT_LIBRARY_VERSION

어떤 아이디어?



답변

gradle에서 SDK 버전 및 도구를 업데이트하여 해결할 수있었습니다.
compileSdkVersion 26
buildToolsVersion "26.0.1"

support library 26.0.1 https://developer.android.com/topic/libraries/support-library/revisions.html#26-0-1


답변

Compile SDK 버전 변경 :

compileSdkVersion 26

빌드 도구 버전 :

buildToolsVersion "26.0.1"

대상 SDK 버전 :

targetSdkVersion 26

종속성 :

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+'

동기화 Gradle.


답변

나는 변화를 가지고 compileSdkVersion = 26buildToolsVersion = '26.0.1'내 종속성 모두 build.gradle파일


답변

내 반응 네이티브 프로젝트에서이 오류는에서 발생합니다 react-native-fbsdk. react-native-fbsdk/android/build.gradle다음을 업데이트하면 문제가 해결됩니다.

compileSdkVersion 26
buildToolsVersion "26.0.1"

답변

나는이 똑같은 오류를 겪었고 내가 잘못하고있는 것을 찾으려고 노력하면서 Googling이었다. Gradle 4.0에서 Android Studio preview 3.0, canary 채널에 이르기까지 모든 것을 시도했습니다.

온라인에서 답을 찾지 못했습니다. 결국 실수로 수정 ​​한 표준 Dev Android Studio 및 2.3.3 Gradle로 돌아갈 수있었습니다. 🙂

라이브러리 프로젝트 업데이트에 중점을 두어 라이브러리 프로젝트에 중첩 된 사용되지 않는 하위 모듈 (데모 앱)에서 오류가 발생했다는 사실을 알지 못했습니다. 26 빌드 도구 및 26+ 디자인 및 지원 라이브러리와 일치하도록 하위 모듈을 업데이트하면 문제가 해결되었습니다.

그것이 당신이보고있는 것인지 확실하지 않지만 개인적으로 나는 다시 릴리스하기 위해 lib를 업데이트하고 있었기 때문에 샘플 앱 모듈에 신경 쓰지 않았으며 오류는 내가 만 만지는 26 SDK와 관련이있는 것으로 보입니다. lib 모듈은 다른 모듈을 확인하려고하지 않았습니다. 그래서 그것은 저에게 모든 문제였습니다. 잘하면 그것은 당신도 고쳐줍니다. 2 개의 라이브러리 프로젝트 에서이 오류가 발생했으며 두 가지 모두에서 수정되었습니다.

어느 쪽이든 행운을 빕니다. 그래도 문제가 해결되지 않으면 공유 한 내용을 공유하십시오. BTW 26.0.01 빌드 도구와 26.1.0 디자인 및 지원은 결국 26.0.1에서도 잘 작동했지만 결국 끝났습니다.


답변

나는이 정확한 오류를했고 나는 나의 실현 compileSdkVersion에 설정 한 25내가 buildToolsVersion설정 하였다"26.0.1" .

난 그냥 변경 그래서 compileSdkVersion26 와 Gradle을을 동기화. 그것은 나를 위해 문제를 해결했습니다.

편집 : 내 targetSDKVersion도 설정26


답변

react-native-youtube 및 react-native-orientation에 대해 비슷한 오류가 있습니다.

해당 프로젝트의 build.gradle을 사용 compileSdkVersion 23하지만 Feature : android : keyboardNavigationCluster가 api 26(Android 8) 이후에 추가 되었다는 것을 알았습니다 .

어떻게 고칠까요?

이 문제를 쉽게 해결하는 한 가지 방법은 /android/build.gradle을 편집하고 (!!! NOT /android/app/build.gradle) 파일 하단에 해당 코드를 추가하는 것입니다.

이를 통해 하위 모듈에서 SDK 및 BuildTool-Version을 강제로 사용할 수 있습니다.

subprojects {
    afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion 27
                buildToolsVersion "27.0.2"
            }
        }
    }
}