web-dev-qa-db-ja.com

com.Android.support:recyclerview-v7:26.0.0-beta2を使用するときにattr / colorErrorエラーが見つけませんでした

私はAndroid Studio 3.0 Canary 4を使用しています。リサイクラービューライブラリをインポートしました。それからattr/colorErrorが見つかりませんというメッセージが出ます。これはapp build.gradleです。

apply plugin: 'com.Android.application'

Android {
    compileSdkVersion 25
    buildToolsVersion "25.0.3"
    defaultConfig {
        applicationId "com.robyn.myapplication"
        minSdkVersion 19
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "Android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    androidTestImplementation('com.Android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.Android.support', module: 'support-annotations'
    })
    testImplementation 'junit:junit:4.12'
    implementation 'com.Android.support:recyclerview-v7:26.0.0-beta2'
    implementation 'com.Android.support:appcompat-v7:26.0.0-beta2'
}

2つのライブラリの実装 'com.Android.support:recyclerview-v7:26.0.0-beta2'と実装 'com.Android.support:appcompat-v7:26.0.0-beta2'を追加するたびに、このエラーメッセージが表示されます。 : enter image description here

私はきれいにして再構築しようとしました、エラーメッセージはまだそこにあります。私は解像度/値/色をチェックし、色の値はそこにあります。この色エラーが発生するのはなぜですか?リサイクラービューを使用したい場合は、どのバージョンのライブラリをインポートすればよいですか?

61
Robin

以下の詳細を変更してください。

compileSdkVersion 26
buildToolsVersion "26.0.0-beta2"

また、compileSDKVersionbuildToolsVersionを26(25)にアップグレードして問題を解決しました。

compileSdkVersion 26
buildToolsVersion '26.0.2'
...
dependencies {
    ...
    compile 'com.Android.support:appcompat-v7:26.0.2'

}

一般に、すべてのバージョンの一貫性を保つようにしてください(コンパイル、ビルド、appcompatライブラリ)。

これはコンパイル時の安定性と実行時の安定性を保証するためです(lintが異なるサポートライブラリのバージョンを見つけた場合、後者に関するlintの警告も表示されます)。

33
vir us

リビジョン26.0.0 Beta 2

26.0.0-beta 2はプレリリース版です。そのAPIサーフェスは変更される可能性があり、サポートライブラリの最新安定版からの機能やバグ修正は必ずしも含まれていません。

あなたの問題に対しては、 "26.0.0-beta2"を使うことができます。 安定バージョンを使用するとより良いでしょう。

4
IntelliJ Amiya

minSdkを変更するだけです。

例えば。:

Android {
   compileSdkVersion 26
   buildToolsVersion "26.0.0-beta2"
   defaultConfig {
      applicationId "com.parse.starter"
      minSdkVersion 15
      targetSdkVersion 21
      versionCode 1
      versionName "1.0"
   }
}

お役に立てれば

1
Ahmed J.

私のアプリがappcompat-26上にあり、appcompat-25を使用するAndroidライブラリを含めようとしたときにも同じエラーが発生しました。私の解決策はこれまでのところ25のアプリを維持することでした。

それがこのようになっているのかどうかはわかりません。きっとあなたはサポートlibバージョンXを使うライブラリを公開し、それをサポートlibバージョンX + 1を使ってアプリで動かすことができなければなりません。

私はAS 3.0-beta7を使っているので、数日前にリリースされたstable 3.0で解決されるかもしれません。

1
JHH

この "attr/colorError"エラーは、私が製品フレーバーを作成し、build.gradle( "app"フォルダー内)の "current"の後に "legacy"を置いたときに発生しました。下に示すように、「現在」の前に「従来」を置くと、エラーは解消されました。低位の "versionCode"または "Sdk"バージョンが最初に現れる必要があるでしょうか。

   flavorDimensions "legacycurrent"
   productFlavors {

      legacy {
               dimension "legacycurrent"
               versionCode 98
               minSdkVersion 9
               targetSdkVersion 25
               compileSdkVersion 25
             }
      current {
               dimension "legacycurrent"
               versionCode 99
               minSdkVersion 14
               targetSdkVersion 26
               compileSdkVersion 26
             }
   }
0