私のgradleファイルで実行時の問題があります。このcompile 'com.google.Android:flexbox:0.3.1'
をコンパイル時の依存関係としてGradleファイルに追加しました。エラーが発生したため、プロジェクトレベルのGradleファイルに追加しました。
maven {
url "https://maven.google.com"
}
上記を追加した後、これは最終的にこのように見えました
allprojects {
repositories {
jcenter()
maven {
url "https://maven.google.com"
}
}
}
上記をアプリレベルのGradleファイルに追加した後、アプリを実行しようとすると別のエラーが発生します。だから私はSOからのいくつかの回答に従って次のことをしました。
パスprojectName\.idea\libraries
に移動し、現在のバージョン以外のサポートライブラリバージョン25.3.1
を含むファイルを削除しました。3.エラーを解決するために、アプリレベルのGradleファイルからこの行をさらに削除しました。
androidTestCompile( 'com.Android.support.test.espresso:espresso-core:2.2.2'、{exclude group: 'com.Android.support'、module: 'support-annotations'})
これで、最終的なGradleファイルは次のようになり、エラーが発生します。
エラー:
Error:(28, 8) error: cannot access ActivityCompatApi23
class file for Android.support.v4.app.ActivityCompatApi23 not found
私のGradleファイル
apply plugin: 'com.Android.application'
Android {
compileSdkVersion 25
buildToolsVersion "25.0.3"
defaultConfig {
applicationId "com.example.test"
minSdkVersion 19
targetSdkVersion 25
versionCode 1
versionName "1.0"
testInstrumentationRunner "Android.support.test.runner.AndroidJUnitRunner"
vectorDrawables.useSupportLibrary = true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.Android.support:appcompat-v7:25.3.1'
compile 'com.Android.support:design:25.3.1'
compile 'com.Android.support:cardview-v7:25.3.1'
compile 'com.Android.support:support-v4:25.3.1'
compile 'com.google.Android:flexbox:0.3.1'
compile 'uk.co.chrisjenx:calligraphy:2.3.0'
testCompile 'junit:junit:4.12'
}
compileSdkVersion
を25に等しいと宣言しましたが、0.3.1
バージョンflexboxレイアウト 使用 libsバージョンをサポート26.0.0
-これは問題です。compileSdkVersion
はサポートライブラリのメジャーバージョンと一致する必要があります。
プロジェクトを26にアップグレードするか、flexboxレイアウトのバージョンを使用して、sdk 25に依存します。これはv0.2.7のようです。
compile 'com.google.Android:flexbox:0.2.7'
私が遭遇する問題のように。
私が使用する場合Android Room like this:
compileSdkVersion 25コンパイル "Android.Arch.persistence.room:runtime:1.0.0"
同じエラーが発生します。
CompileSdkVersionはサポートライブラリのメジャーバージョンと一致する必要があるためです。
詳細はこちらをご覧ください: ルームの永続化後のサポートライブラリのエラー
Roomは26.1のサポートライブラリに依存しています。これは、SupportLibraryがバージョン間の相互運用性を保証していないため、おそらく壊れているためです。
また、これを使用して問題を修正できます
compile ("Android.Arch.persistence.room:runtime:1.0.0") {
exclude group: 'com.Android.support'
}
使用する
compile 'com.Android.support:appcompat-v7:26.1.0'
私は行を変更しました
compile 'com.Android.support:appcompat-v7:26.0.0-alpha1'
compile 'com.Android.support:appcompat-v7:26.+'
そしてそれは私のために働いた