最新のサポートライブラリのバージョン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 compileSdkVersion 26
buildToolsVersion "26.0.1"
のsdkバージョンとツールを更新することによってそれを解決することができました
とsupport library 26.0.1
https://developer.Android.com/topic/libraries/support-library/revisions.html#26-0-1
コンパイル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 = 26
ファイルでbuildToolsVersion = '26.0.1'
とbuild.gradle
を変更しなければなりませんでした
私の反応ネイティブプロジェクトでは、このエラーはreact-native-fbsdk
で生成されます。以下のようにreact-native-fbsdk/Android/build.gradle
を更新することで問題は解決します。
compileSdkVersion 26
buildToolsVersion "26.0.1"
私はこれとまったく同じエラーに遭遇し、私が間違ってやっていることを見つけることを試みることをくまなくグーグルしていました。私はGradle 4.0からAndroid Studio preview 3.0、カナリアチャンネルまで試してみました、あなたはそれに名前を付けます。
私は答えをオンラインで見つけたことがない。結局、誤って修正してしまったので、標準のAndroid Android Studioと2.3.3 Gradleに戻ることができました:)。
結局、私は自分のライブラリプロジェクトを更新することに集中していたので、エラーが自分のライブラリプロジェクトにネストされている未使用のサブモジュール(デモアプリ)が原因であることに気付かなかった。 26個のビルドツールと26個以上の設計およびサポートライブラリに合うようにサブモジュールを更新したら、問題は解決しました。
それがあなたが見ているものでもあるかどうかわからないが、個人的に私はただリリースするためにlibを更新していただけなのでサンプルアプリモジュールを気にしていなかった。 libモジュールは他のモジュールをチェックすることを考えていませんでした。それが私にとってずっと問題でした。うまくいけば、それもあなたを修正します。私は2つの図書館プロジェクトでこのエラーを抱えていました、そしてそれは両方でそれを修正しました。
どちらかの方法で解決し、問題が解決しない場合は、どうしたのかを共有してください。 BTW 26.0.01のビルドツールと26.1.0の設計とサポートは、26.0.1でも問題なく動作しましたが、最終的には最終的に完成しました。
私はこの正確なエラーがあり、私のcompileSdkVersion
が25
に設定され、buildToolsVersion
が"26.0.1"
に設定されていることに気付きました。
それで私はcompileSdkVersion
を26
に変えてGradleを同期させたところです。それは私のために問題を解決しました。
編集:私のtargetSDKVersion
も26
に設定されていました
私は私のIonic 2プロジェクトと同じ問題を抱えていました。
ionic build --release Android
を実行これが誰かに役立つことを願っています!
React-native-youtubeとreact-native-orientationについても同様のエラーがありました。
これらのプロジェクトのbuild.gradleはcompileSdkVersion 23
を使用しますが、api 26
(Android 8)以降にFeature:Android:keyboardNavigationClusterが追加されたことがわかりました。
それではどうやって直すの?
これを簡単に修正する一つの方法はあなたの/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"
}
}
}
}
私はまたあなたが2つの変更を加える必要があるこの問題に直面しました:
ファイル名: Android/build.gradle 以下のコードを言及
subprojects {
afterEvaluate {
project -> if (project.hasProperty("Android")) {
Android {
compileSdkVersion 26 buildToolsVersion '26.0.2'
}
}
}
}
ファイル名: Android/app/build.gradle このバージョンのあなたのcompliesdkバージョンとbuildToolVersionを変更してください:
compileSdkVersion 26 buildToolsVersion "26.0.2"
とで
dependencies {
compile 'com.Android.support:appcompat-v7:26.0.2'
}
//Adding this to the root build.gradle solved my problem, thanks @Yalamber
subprojects {
afterEvaluate { project ->
if (project.hasProperty("Android")) {
Android {
compileSdkVersion 26
buildToolsVersion '26.0.2'
}
}
}
}
targetSDKVersion 26から25に変更しようとすると、指定された名前と一致するリソースが見つかりません:attr 'Android:keyboardNavigationCluster'。 Support Library 26.0.0にアップデートすると
あなたのBuild.gradleからこのコードを変更するだけ
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.group == 'com.Android.support') {
if (!requested.name.startsWith("multidex")) {
details.useVersion '26.0.1'
}
}
}
}
から
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.group == 'com.Android.support') {
if (!requested.name.startsWith("multidex")) {
details.useVersion '25.2.0'
}
}
}
}
あなたのAndroidスタジオを3.0に更新した後、このエラーが発生した場合は単にgradleプロパティを更新してください、これらは私の問題を解決した設定です:
compileSdkVersion 26
targetSdkVersion 26
buildToolsVersion '26.0.2'
Androidスタジオでは、
プロジェクトを右クリックします(私はCordovaプロジェクトを持っていたので、CordovaLibとAndroidを持っていました:私の場合はAndroidを選択しました)
私のプロジェクトapp/build.gradle
を更新して
compileSDkVersion 26
buildToolsVersion '26.0.1'
しかし、問題は実際にはreact-native-fbsdk
パッケージにあります。 node_modules/react-native-fbsdk/Android/build.gradle
の同じ設定を変更しなければなりませんでした。
私は自分のPhoneGapプロジェクトのひとつ(Android studio 3.0.1)についても同じ問題に直面していました。これを解決するために、私は従った、次のステップ
1)プロジェクト名(私の場合はAndroid)を右クリックして、[Open Module Settings]を選択します。
2)モジュールを選択します(AndroidおよびCordovaLib)
3)上部のプロパティをクリック
4)Compile SDKバージョンを選択しました(私はAPI 26:Android 8.0を選択しました)
5)Build Tools Versionを選択します(私は26.0.2を選択しました)
6)ソース互換性(1.6)
7)ターゲットの互換性(1.6)
Okをクリックしてプロジェクトを再構築します。
次のリンクは私が従ったステップのための私の設定を示しています
https://app.box.com/s/o11xc8dy0c2c7elsaoppa0kwe1d94oghhttps://app.box.com/s/ofdcg0a8n0zalumvpyju58he402ag1th
私は最近これを打ち、それがどこから来たのか覚えています。 Xamarin.Android。*バージョンとインストールされているAndroid SDKバージョンの間の不一致です。
NuGet 15.5.3
の現在のVS2017 Xamarin.Android.*
新しいプロジェクトのデフォルトは25.4.0.2
であり、クロスプラットフォーム開発のためのデフォルトのVSインストールは次のAndroid SDKパッケージです。
7.1
- ヌガー25
Xamarin.Android.*
のソリューションnuGetを26.1.0.1
にアップグレードした場合は、Android SDKに次のものをインストールする必要があります。
8.0
- オレオ26
React-native-fbsdkをコンパイルすると、この問題が発生しました
私はこの問題をbuild.gradle
のreact-native-fbsdk
の変更によって解決しました
から
compile('com.facebook.Android:facebook-Android-sdk:4.+')
に
compile('com.facebook.Android:facebook-Android-sdk:4.28.0')
これらをgradleで更新する
compileSdkVersion 27 buildToolsVersion '27 .0.1 '
ネイティブスクリプトを使用していてこの問題に直面している人のために:あなたは追加することができます
compileSdkVersion 26
buildToolsVersion '26.0.1'
app_Resources/Android/app.gradle(Android {
の下)にあります。
次に、プロジェクトルートでtns platform remove Android
とtns build Android
を実行します。
私はbuild.gradleファイルにいくつかの変更を加えることでこの問題を解決しました
root build.gradle の変更点は次のとおりです。
subprojects {
afterEvaluate {
project -> if (project.hasProperty("Android")) {
Android {
compileSdkVersion 26
buildToolsVersion '26.0.1'
}
}
}
}
Build.gradleの変更点は以下のとおりです。
compileSdkVersion 26
buildToolsVersion "26.0.1"
そして
dependencies {
compile 'com.Android.support:appcompat-v7:26.0.1'
}
この問題は私にとってコンパイルのためにバージョン26を必要とするライブラリの1つによって引き起こされました。
TargetSdkVersionを26にすると他の問題が発生します。また、Oreoプラットフォームに適応するにはアプリを微調整する必要があります。これはすべてのための正しい解決策ではありません。
compileSdkVersion to 26
とbuildToolsVersion to 26.0.2
を作るだけでうまくいきました。
また、26.1.0以降を使うようにすべての supportライブラリを更新する必要があります。
開発環境にAndroid SDK 8.0があることを確認してください。私のMACにも同じ問題があり、SDK 8.0とそのツールをインストールすることで修正されました。私はWindowsでも同じ問題を抱えています。私は今SDKをダウンロードしています。
このためには、以下のことをする必要があります。1.プロジェクトのクリックを右クリックします。
2. [モジュールの設定] - > [プロパティ]タブ - > [コンパイルSDK]と[ビルドツールのバージョン]を26,26.0.0に変更します。
[OK]をクリックします。
一時間後に私のために働いてみました。
ionicでも同じ問題が発生しました。
cordova platform remove Android
cordova platform add [email protected]
そして、platform/Android/projet.propertiesで置き換えます
cordova.system.library.1=com.Android.support:support-v4+
に
cordova.system.library.1=com.Android.support:support-v4:26+