Android Studio 2.3にアップデートした後、このエラーメッセージが表示されました。アプリが正常に実行されているため、単なるヒントにすぎませんが、非常に奇妙です。
すべてのcom.Android.supportライブラリは、まったく同じバージョン仕様を使用する必要があります(バージョンを混在させるとランタイムクラッシュが発生する可能性があります)。バージョン25.1.1、24.0.0が見つかりました。例としては、com.Android.support:animated-vector-drawable:25.1.1およびcom.Android.support:mediarouter-v7:24.0.0があります。
私のgradle:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.Android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.Android.support', module: 'support-annotations'
})
testCompile 'junit:junit:4.12'
compile 'com.Android.support:appcompat-v7:25.1.1'
compile 'com.Android.support:support-v4:25.1.1'
compile 'com.Android.support:design:25.1.1'
compile 'com.Android.support:recyclerview-v7:25.1.1'
compile 'com.Android.support:cardview-v7:25.1.1'
compile 'com.google.Android.gms:play-services-maps:10.2.0'
compile 'com.google.Android.gms:play-services:10.2.0'
compile 'io.reactivex.rxjava2:rxjava:2.0.1'
compile 'io.reactivex.rxjava2:rxandroid:2.0.1'
compile 'com.jakewharton:butterknife:8.4.0'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0'
compile 'com.blankj:utilcode:1.3.6'
compile 'com.orhanobut:logger:1.15'
compile 'com.facebook.stetho:stetho:1.4.2'
provided 'com.google.auto.value:auto-value:1.2'
annotationProcessor 'com.google.auto.value:auto-value:1.2'
annotationProcessor 'com.ryanharter.auto.value:auto-value-parcel:0.2.5'
compile 'com.mikepenz:iconics-core:2.8.2@aar'
compile('com.mikepenz:materialdrawer:5.8.1@aar') { transitive = true }
compile 'com.mikepenz:google-material-typeface:2.2.0.3.original@aar'
compile 'me.zhanghai.Android.materialprogressbar:library:1.3.0'
compile 'com.github.GrenderG:Toasty:1.1.1'
compile 'com.github.CymChad:BaseRecyclerViewAdapterHelper:2.8.0'
compile 'com.github.MAXDeliveryNG:slideview:1.0.0'
compile 'com.facebook.fresco:fresco:1.0.1'
compile 'com.github.bumptech.glide:glide:3.7.0'
compile 'com.google.maps.Android:android-maps-utils:0.4.4'
compile 'com.github.jd-alexander:library:1.1.0'
}
次のいずれかの方法でこれを解決できます。
Android studio 3.0からは、より役立つヒントが表示されるようになったため、はるかに簡単になりました。このヒントに従うだけで済みます。
例えば:
すべてのcom.Android.supportライブラリは、まったく同じバージョン仕様を使用する必要があります(バージョンを混在させるとランタイムがクラッシュする可能性があります)。 バージョン27.0.2、26.1.0が見つかりました。例としては、 com.Android.support:animated-vector-drawable:27.0.2および com.Android.support:customtabs:26.1.0があります。
ライブラリ、あるいはツールとライブラリの組み合わせによっては、互換性がない、あるいはバグを引き起こす可能性があるものがあります。そのような非互換性の1つは、最新バージョンではないAndroidサポートライブラリのバージョンとコンパイルすることです(特に、あなたのtargetSdkVersionよりも低いバージョンです)。
解決策:
古いバージョンと新しいバージョン番号のライブラリを明示的に追加してください。
私の場合はcom.Android.support:customtabs:26.1.0
なので、追加する必要があります。
implementation "com.Android.support:customtabs:27.0.2"
つまり、2番目の項目からライブラリを取り出し、最初の項目からバージョン番号を付けて実装します。
注:今同期を押すことを忘れないでください。gradleは依存グラフを再構築し、それ以上競合がないかどうかを確認できます。
説明: customtabs
を使用しないのでエラーメッセージに混乱するかもしれません。
まあ..あなたはそれを直接使っていませんでしたが、あなたのライブラリの一つは古いバージョンのcustomtabs
を内部的に使っているので、あなたはそれを直接尋ねる必要があります。
あなたのライブラリのどれが古いバージョンを担当しているのか知りたいなら、そしておそらく彼のlibを更新するように作者に頼んで、Gradle依存関係レポートを実行してください。
これに注意
CommonsWare answer に触発された:
Gradle依存関係レポートを実行して、依存関係の完全なツリーが何であるかを確認してください。
そこから、あなたのライブラリのどれがAndroid Supportライブラリの異なるバージョンを要求しているかがわかります。同じバージョンを入手するには、0バージョンを使用するか、Gradleの他の競合解決アプローチを使用してください。
Gradle Pluginバージョン3.0以降:compile
はimplementation
またはapi
に置き換えられました。違いは この回答 をご覧ください。
したがって代わりに使用してください:
./gradlew -q dependencies app:dependencies --configuration debugAndroidTestCompileClasspath
またはwindows cmdの場合:
gradlew -q dependencies app:dependencies --configuration debugAndroidTestCompileClasspath
競合しているバージョンを検索します。
私にとっては、エラーはcom.google.Android.gms:play-services:10.2.0
を削除した後に消えました
com.google.Android.gms:play-services-location:10.2.0
とcom.google.Android.gms:play-services-maps:10.2.0
は、私が使用する唯一の2つの再生サービスなので、含めてください。
gms:play-services
はサポートライブラリの古いコンポーネントに依存していると思うので、それらを明示的に自分自身で追加する必要があります。
aS 3.0の場合はそれより古い。
実行します。
./gradlew -q dependencies <module-name>:dependencies --configuration implementation
例:
./gradlew -q dependencies app:dependencies --configuration implementation
誰かが新しいgradleプラグインでもっと良い方法を知っているなら、私に知らせてください。
project/.idea/libraries
フォルダに移動して、どのライブラリが異なるのかを確認します。build.gradle
ファイルに同じバージョンのこれらのライブラリを手動で含める必要があります。例えば。:
compile 'com.Android.support:appcompat-v7:25.2.0'
// Wrong library version found on 1st point
compile 'com.Android.support:customtabs:25.2.0'
エラーについて何かを言う小さな情報ウィンドウに注意してください変更して追加しなければならない例を示しています。
この場合:
バージョン25.1.1、24.0.0が見つかりました。例には、com.Android.support:animated-vector-drawable:25.1.1およびcom.Android.support:mediarouter-v7が含まれます:24.0.0
あなたの
com.Android.support:animated-vector-drawable:25.1.1
はバージョン25.1.1であり、あなたの
com.Android.support:mediarouter-v7:24.0.0
はバージョン24.0.0なので、同じバージョンのメディアルーターを追加する必要があります:
com.Android.support:mediarouter-v7:25.1.1
そして、小さな情報ウィンドウが言うすべての例で、これを行います、この場合バージョン25.1を持たないすべてのライブラリ1。
変更する必要がある次のライブラリとパッケージを表示するには、指定されたライブラリを修正した後、gradleを同期する必要があります。
重要:
別の方法を使用して、実際にコンパイルしているすべてのライブラリのバージョンの違いを確認することもできます(gradle依存関係レポートを実行するか、ライブラリファイルに移動するなど)、実際の目的は、同じバージョンで使用しています。
これをあなたのbuild.gradle(モジュール:app)の最後に追加してください:
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.group == 'com.Android.support') {
if (!requested.name.startsWith("multidex")) {
details.useVersion '25.3.1'
}
}
}
}
'25 .3.1 'を、すべての依存関係に使用するAndroidサポートライブラリのバージョンに置き換えてください。これは、使用している標準のSDKバージョンよりも低くしないでください。
グラドルを再同期するより
問題を解決するための最善の方法は、すべての 'com.Android.support:...'をAndroid Studioによって提案されたものに実装することです
(どのサポートバージョンを使用していても構いません - 27.1.1、28.0.0など)
エラー行にカーソルを置きます。
implementation 'com.Android.support:appcompat-v7:28.0.0'
Androidのスタジオでは、「com.Android.support:...」が「com.Android.support:appcompat-v7:28.0.0」とは異なるバージョンであることを通知します
例
すべてのcom.Android.supportライブラリは、まったく同じバージョン仕様を使用する必要があります(バージョンを混在させるとランタイムクラッシュが発生する可能性があります)。バージョン28.0.0、27.1.0、27.0.2が見つかりました。例としては、com.Android.support:animated-vector-drawable:28.0.0やcom.Android.support:exifinterface:27.1.0があります。
だからcom.Android.support:animated-vector-drawable:28.0.0
&com.Android.support:exifinterface:28.0.0
。を追加してgradleファイルを同期させます。
この行にエラーがなくなるまで、提案されたすべての 'com.Android.support:...'を実装してみてください。implementation 'com.Android.support:appcompat-v7:28.0.0'
私の場合は、追加しました
implementation 'com.Android.support:appcompat-v7:28.0.0'
implementation 'com.Android.support:animated-vector-drawable:28.0.0'
implementation 'com.Android.support:exifinterface:28.0.0'
implementation 'com.Android.support:cardview-v7:28.0.0'
implementation 'com.Android.support:customtabs:28.0.0'
implementation 'com.Android.support:support-media-compat:28.0.0'
implementation 'com.Android.support:support-v4:28.0.0'
このすべての依存関係...他の人にとっては異なる可能性があります。
Android Studio 2.3にアップデートした後もまったく同じ問題がありました
この行を依存関係に追加することで、私の問題は解決しました。
compile 'com.Android.support:customtabs:25.2.0'
A)gradle dependencies
または./gradlew dependencies
を実行してください。
B)あなたのツリーを見て、あなたが管理していない依存関係に対して、どの依存関係が異なるサポートライブラリのバージョンを指定しているかを見つけ出してください。
私は、この警告が依存関係があなた自身のコードによって直接完全に使われていない場合にも表示されることに気づかなかった。私の場合、Facebookは私が使用していなかったいくつかのサポートライブラリを指定しています。これらの依存関係のほとんどは、 - > X.X.X(*) 記号で示されていますカードビューとカスタムタブのライブラリはだれにも上書きされていないので、それらを使用しなくても、私は自分で25.2.0を要求する必要があります。
+--- com.facebook.Android:facebook-Android-sdk:4.17.0
| +--- com.Android.support:support-v4:25.0.0 -> 25.2.0 (*)
| +--- com.Android.support:appcompat-v7:25.0.0 -> 25.2.0 (*)
| +--- com.Android.support:cardview-v7:25.0.0
| | \--- com.Android.support:support-annotations:25.0.0 -> 25.2.0
| +--- com.Android.support:customtabs:25.0.0
| | +--- com.Android.support:support-compat:25.0.0 -> 25.2.0 (*)
| | \--- com.Android.support:support-annotations:25.0.0 -> 25.2.0
| \--- com.parse.bolts:bolts-Android:1.4.0 (*)
Gradleがすでにあなたに警告し、あなたに例を挙げているなら...
例としては、com.Android.support:animated-vector-drawable:25.1.1およびcom.Android.support:mediarouter-v7:24.0.0があります。
gradle dependencies
は非常に冗長になる可能性があるので、より低いバージョンのためにいくつかのgrepハイライトを投げ入れれば...それはさらに簡単です:
./gradlew dependencies | grep --color -E 'com.Android.support:mediarouter-v7|$'
変数を使用する :次のようにすると、すべてのライブラリで同じバージョンを確実に使用できるようになります。
dependencies {
ext {
support_library_version = '25.2.0'
google_play_services_version = '10.2.0'
}
//#####################################################################
// Support Library
//#####################################################################
compile "com.Android.support:appcompat-v7:${support_library_version}"
compile "com.Android.support:palette-v7:${support_library_version}"
compile "com.Android.support:design:${support_library_version}"
//#####################################################################
// Google Play Services
//#####################################################################
compile "com.google.Android.gms:play-services-auth:${google_play_services_version}"
compile "com.google.Android.gms:play-services-ads:${google_play_services_version}"
compile "com.google.Android.gms:play-services-analytics:${google_play_services_version}"
//#####################################################################
// Firebase
//#####################################################################
compile "com.google.firebase:firebase-core:${google_play_services_version}"
compile "com.google.firebase:firebase-auth:${google_play_services_version}"
compile "com.google.firebase:firebase-messaging:${google_play_services_version}"
どのようにグーグルがあなたがこのバージョニングを扱うことを提案するかに関するさらなる情報はこの記事で見つけることができます: https://developer.Android.com/studio/build/index.html#top-level
これを追加するだけです。
compile 'com.Android.support:mediarouter-v7:25.2.0'
新しいSDKバージョンのUpdated
compile 'com.Android.support:mediarouter-v7:28.0.0-alpha3'
同じエラーがappcompat
にもある場合
implementation 'com.Android.support:appcompat-v7:27.0.1'
それからdesign
を追加することで解決しました。
implementation 'com.Android.support:appcompat-v7:27.0.1'
implementation 'com.Android.support:design:27.0.1'
私にとっては、追加
implementation 'de.mrmaffen:vlc-Android-sdk:2.0.6'
にappcompat-v7:23.1.1
が含まれていました
.idea/libraries
vlc
がなければ、appcompat
だけで十分です。
あなたはすでに上のすべての答えとコメントを見ましたが、この答えは新しい開発者が容易に手に入れないかもしれない何かをクリアすることです。
./gradlew -q依存関係app:dependencies --configuration compile
上記の行は間違いなくあなたの命を救うでしょうが、どのように上記の行の結果から正確なポイントを得るか。
上記のコマンドからすべての依存関係チャートまたはリストを取得したら、コード内で競合しているバージョン番号を検索する必要があります。下の画像をご覧ください。
上の画像では、 23.4.0 が問題を引き起こしていることがわかりますが、これは私たちのgradleファイルでは見つけることができません。それで今、このバージョン番号(23.4.0)は私たちを救うでしょう。この番号がわかれば、上記のコマンドresultの結果からこの番号がわかり、その依存関係を直接Gradleファイルにインポートします。明確な視野を得るために下の画像を見てください。
com.Android.support:cardview-v7:23.4.0 および com.Android.support:customtabs:23.4.0 を作成しているバージョンを使用していることが明確にわかります。問題。依存関係リストからそれらの行を単にコピーして、私たちのgradleファイルで明示的に使用しますが、更新されたバージョンリンクを使用します。
実装 "com.Android.support:cardview-v7:26.1.0"実装" com.Android.support:customtabs:26.1.0 "
競合を解決するもう1つの方法は、このようなすべての依存関係に対して正しいバージョンを強制することです。
dependencies {
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
if (details.requested.group == 'com.Android.support' && details.requested.name == 'support-v4') {
details.useVersion "27.0.2"
}
}
...
}
https://docs.gradle.org/current/userguide/customizing_dependency_resolution_behavior.html
Support-v4の代わりにsupport-v13を使用してください。
compile 'com.Android.support:support-v13:25.2.0'
私はコンパイルcompile 'com.google.Android.gms:play-services:10.2.4'
で'com.Android.support:appcompat-v7:25.3.1'
を追加した後に同じエラーを得ました。
animated-vector-drawable
とmediarouter libs
を追加することで問題は解決しました。
compile 'com.google.Android.gms:play-services:10.2.4'
compile 'com.Android.support:appcompat-v7:25.3.1'
compile 'com.Android.support:animated-vector-drawable:25.3.1'
compile 'com.Android.support:mediarouter-v7:25.3.1'
私はこれを持っていました:
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.Android.support:appcompat-v7:27.1.1'
implementation 'com.Android.support:design:27.1.1'
implementation 'com.Android.support:support-v4:27.1.1'
implementation 'com.google.firebase:firebase-auth:12.0.1'
implementation 'com.google.firebase:firebase-firestore:12.0.1'
implementation 'com.google.firebase:firebase-messaging:12.0.1'
implementation 'com.google.Android.gms:play-services-auth:12.0.1'
implementation'com.facebook.Android:facebook-login:[4,5)'
implementation 'com.Twitter.sdk.Android:Twitter:3.1.1'
implementation 'com.github.PhilJay:MPAndroidChart:v3.0.3'
implementation 'org.jetbrains:annotations-Java5:15.0'
implementation project(':vehiclesapi')
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.Android.support.test:runner:1.0.1'
androidTestImplementation 'com.Android.support.test.espresso:espresso-core:3.0.1'
}
解決策は簡単でした - 主要な依存関係はすべて正しかったので、葉 - どんなサードパーティの依存関係も。犯人が見つかるまで一つずつ削除し、Facebookになることが判明!そのAndroidのサポートライブラリのバージョン27.0.2を使用しています。私はcardviewのバージョン27.1.1を追加しようとしましたが、それでも解決策が十分に単純であるかどうかはうまくいきませんでした。
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.Android.support:appcompat-v7:27.1.1'
implementation 'com.Android.support:design:27.1.1'
implementation 'com.Android.support:support-v4:27.1.1'
implementation 'com.google.firebase:firebase-auth:12.0.1'
implementation 'com.google.firebase:firebase-firestore:12.0.1'
implementation 'com.google.firebase:firebase-messaging:12.0.1'
implementation 'com.google.Android.gms:play-services-auth:12.0.1'
implementation('com.facebook.Android:facebook-login:[4,5)'){
// contains com.Android.support:v7:27.0.2, included required com.Android.support.*:27.1.1 modules
exclude group: 'com.Android.support'
}
implementation 'com.Android.support:cardview-v7:27.1.1' // to replace facebook sdk's cardview-v7:27.0.2.
implementation 'com.Twitter.sdk.Android:Twitter:3.1.1'
implementation 'com.github.PhilJay:MPAndroidChart:v3.0.3'
implementation 'org.jetbrains:annotations-Java5:15.0'
implementation project(':vehiclesapi')
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.Android.support.test:runner:1.0.1'
androidTestImplementation 'com.Android.support.test.espresso:espresso-core:3.0.1'
}
私の問題はあなたの問題に似ています。ここにエラーがあります!
compile 'com.Android.support:appcompat-v7:25.3.0'
すべてのcom.Android.supportライブラリは、まったく同じバージョン仕様を使用する必要があります(バージョンを混在させるとランタイムクラッシュが発生する可能性があります)。バージョン25.3.0、24.0.0が見つかりました。例としては、 'com.Android.support:animated-vector-drawable:25.3.0'および 'com.Android.support:mediarouter-v7:24.0.0'があります。
これを見る例には、 'com.Android.support:animated-vector-drawable:25.3.0'と 'com.Android.support:mediarouter-v7:24.0.0'があります
これらのコードを依存関係に追加するだけで、バージョンが同じであることを確認してください。
compile 'com.Android.support:animated-vector-drawable:25.3.0'
compile 'com.Android.support:mediarouter-v7:25.3.0'
私は以前に同じ問題を抱えていました、そして私はそれに対する解決策を得ました。
私はちょうど別のバージョンを持っていたが私のsupport:appcompat
の同じバージョンを持つライブラリを追加しました。
あなたのエラーの例:
すべてのcom.Android.supportライブラリは、まったく同じバージョン仕様を使用する必要があります(バージョンを混在させるとランタイムがクラッシュする可能性があります)。 バージョン25.1.1、24.0.0が見つかりました。例としては、 com.Android.support:animated-vector-drawable:25.1.1、 com.Android.support:mediarouter-v7:24.0.0があります。
*解決策は、これらのライブラリのバージョンを次のようにコンパイルすることです。
compile 'com.Android.support:mediarouter-v7:25.1.1'
- 別のライブラリに同じ問題があり、別のバージョンにあなたのsupport:appcompat
バージョンでそれをコンパイルするだけ
これで私の問題は解決したので、それがあなたの問題を解決することを願っています。
ご多幸を祈る :)
私はアンドロイドスタジオ2.3にアップグレードした後に私の問題を解決するためにこれら二つを使った
compile 'com.Android.support:animated-vector-drawable:25.0.0'
compile 'com.Android.support:mediarouter-v7:25.0.0'
答えを探して組み合わせた後、この質問の 2018年バージョン そしてそれは私のために働きました:
1)ナビゲーションタブでプロジェクトビューに変更
2) [YourProjectName] /。idea/libraries/ に移動します。
3)Gradle__com_Android_support_ [libraryName]で始まるすべてのファイルを削除します
例: Gradle__com_Android_support_animated_vector_drawable_26_0_0.xml
4)Gradleファイルで変数を定義し、それを使用して $ {variableName} のようにバージョン番号を置き換えます。
Def変数:
ext {
support_library_version = '28.0.0' //use the version of choice
}
変数を使う:
implementation "com.Android.support:cardview-v7:${support_library_version}"
gradleの例:
dependencies {
ext {
support_library_version = '28.0.0' //use the version of choice
}
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation "com.Android.support:animated-vector-drawable:${support_library_version}"
implementation "com.Android.support:appcompat-v7:${support_library_version}"
implementation "com.Android.support:customtabs:${support_library_version}"
implementation "com.Android.support:cardview-v7:${support_library_version}"
implementation "com.Android.support:support-compat:${support_library_version}"
implementation "com.Android.support:support-v4:${support_library_version}"
implementation "com.Android.support:support-core-utils:${support_library_version}"
implementation "com.Android.support:support-core-ui:${support_library_version}"
implementation "com.Android.support:support-fragment:${support_library_version}"
implementation "com.Android.support:support-media-compat:${support_library_version}"
implementation "com.Android.support:appcompat-v7:${support_library_version}"
implementation "com.Android.support:recyclerview-v7:${support_library_version}"
implementation "com.Android.support:design:${support_library_version}"
}
2018年にこのエラーを更新し、プロジェクト構造から実装を追加
implementation 'com.Android.support:support-v13:28.0.0'
プロジェクトモードで - > 外部ライブラリ そこにあなたの問題を見つけることができます、私の場合は私はバージョン28と外部ライブラリを使用しています com.Android.support:support-media-compat-26.0.0
そしてここにエラーがありました。
実装support v13
の後、それは働いています
24.0.0
の代わりにバージョン25.1.1
でコンパイルするために他の依存関係を定義しました。すべての依存関係のバージョンを25.1.1
と同じに設定してください。
私は同じ問題を抱えていますが、これらの3行を追加することでこれを解決しました。
implementation 'com.Android.support:design:27.1.1'
implementation "com.Android.support:customtabs:27.1.1"
implementation 'com.Android.support:mediarouter-v7:27.1.1'
今すべてのものが完璧に動作します
この警告を修正するための私の流れはここにあります
build.gradle
Android {
compileSdkVersion ... // must same version (ex: 26)
...
}
dependencies {
...
compile 'any com.Android.support... library' // must same version (ex: 26.0.1)
compile 'any com.Android.support... library' // must same version (ex: 26.0.1)
...
compile ('a library B which don't use 'com.Android.support...' OR use SAME version of 'com.Android.support'){
// do nothing
}
...
compile ('a library C which use DIFFERENT 'com.Android.support...' (ex:27.0.1) {
// By default, if use don't do anything here your app will choose the higher com.Android.support... for whole project (in this case it is 27.0.1)
// If you want to use 26.0.1 use
exclude group: 'com.Android.support', module: '...' (ex module: 'appcompat-v7')
exclude group: 'com.Android.support', module: 'another module'
...
// If you want to use 27.0.1 do
Upgrade `compileSdkVersion` and all 'com.Android.support' to 27.0.1.
(It may be a good solution because the best practice is always use latest `compileSdkVersion`.
However, use 26 or 27 is base on you for example higher library may have bug)
}
}
Toアプリ内のすべてのライブラリのdependencies
を表示/検証する
端末を開き、./gradlew app:dependencies
を実行します
Toアプリ内の特定のライブラリのdependencies
を表示するチュートリアルはこちら:- 特定の依存関係の依存関係を除外する方法Gradle
お役に立てば幸いです
./gradlewタスク--allを実行し、ターゲットのバージョン(25.3.1)とは異なるバージョンである依存関係をチェックしました。あなたはこのようなものを得るでしょう:
app:prepareComAndroidSupportAnimatedVectorDrawable2531Library - Prepare com.Android.support:animated-vector-drawable:25.3.1
app:prepareComAndroidSupportAppcompatV72531Library - Prepare com.Android.support:appcompat-v7:25.3.1
app:prepareComAndroidSupportCardviewV72531Library - Prepare com.Android.support:cardview-v7:25.3.1
app:prepareComAndroidSupportCustomtabs2531Library - Prepare com.Android.support:customtabs:25.3.1
app:prepareComAndroidSupportDesign2531Library - Prepare com.Android.support:design:25.3.1
app:prepareComAndroidSupportMediarouterV72531Library - Prepare com.Android.support:mediarouter-v7:25.3.1
app:prepareComAndroidSupportPaletteV72531Library - Prepare com.Android.support:palette-v7:25.3.1
app:prepareComAndroidSupportRecyclerviewV72531Library - Prepare com.Android.support:recyclerview-v7:25.3.1
app:prepareComAndroidSupportSupportCompat2531Library - Prepare com.Android.support:support-compat:25.3.1
app:prepareComAndroidSupportSupportCoreUi2531Library - Prepare com.Android.support:support-core-ui:25.3.1
app:prepareComAndroidSupportSupportCoreUtils2531Library - Prepare com.Android.support:support-core-utils:25.3.1
app:prepareComAndroidSupportSupportFragment2531Library - Prepare com.Android.support:support-fragment:25.3.1
app:prepareComAndroidSupportSupportMediaCompat2531Library - Prepare com.Android.support:support-media-compat:25.3.1
app:prepareComAndroidSupportSupportV42531Library - Prepare com.Android.support:support-v4:25.3.1
app:prepareComAndroidSupportSupportVectorDrawable2531Library - Prepare com.Android.support:support-vector-drawable:25.3.1
app:prepareComAndroidSupportTransition2531Library - Prepare com.Android.support:transition:25.3.1
app:prepareComAndroidVolleyVolley100Library - Prepare com.Android.volley:volley:1.0.0
app:prepareComCrashlyticsSdkAndroidAnswers1312Library - Prepare com.crashlytics.sdk.Android:answers:1.3.12
app:prepareComCrashlyticsSdkAndroidBeta124Library - Prepare com.crashlytics.sdk.Android:beta:1.2.4
app:prepareComCrashlyticsSdkAndroidCrashlytics267Library - Prepare com.crashlytics.sdk.Android:crashlytics:2.6.7
app:prepareComCrashlyticsSdkAndroidCrashlyticsCore2316Library - Prepare com.crashlytics.sdk.Android:crashlytics-core:2.3.16
app:prepareComFacebookAndroidFacebookAndroidSdk4161Library - Prepare com.facebook.Android:facebook-Android-sdk:4.16.1
app:prepareComGoogleAndroidGmsPlayServicesAnalytics1026Library - Prepare com.google.Android.gms:play-services-analytics:10.2.6
app:prepareComGoogleAndroidGmsPlayServicesAnalyticsImpl1026Library - Prepare com.google.Android.gms:play-services-analytics-impl:10.2.6
app:prepareComGoogleAndroidGmsPlayServicesAuth1026Library - Prepare com.google.Android.gms:play-services-auth:10.2.6
app:prepareComGoogleAndroidGmsPlayServicesAuthBase1026Library - Prepare com.google.Android.gms:play-services-auth-base:10.2.6
app:prepareComGoogleAndroidGmsPlayServicesBase1026Library - Prepare com.google.Android.gms:play-services-base:10.2.6
app:prepareComGoogleAndroidGmsPlayServicesBasement1026Library - Prepare com.google.Android.gms:play-services-basement:10.2.6
app:prepareComGoogleAndroidGmsPlayServicesCast1026Library - Prepare com.google.Android.gms:play-services-cast:10.2.6
app:prepareComGoogleAndroidGmsPlayServicesLocation1026Library - Prepare com.google.Android.gms:play-services-location:10.2.6
app:prepareComGoogleAndroidGmsPlayServicesMaps1026Library - Prepare com.google.Android.gms:play-services-maps:10.2.6
app:prepareComGoogleAndroidGmsPlayServicesTagmanagerV4Impl1026Library - Prepare com.google.Android.gms:play-services-tagmanager-v4-impl:10.2.6
app:prepareComGoogleAndroidGmsPlayServicesTasks1026Library - Prepare com.google.Android.gms:play-services-tasks:10.2.6
app:prepareComGoogleFirebaseFirebaseAnalytics1026Library - Prepare com.google.firebase:firebase-analytics:10.2.6
app:prepareComGoogleFirebaseFirebaseAnalyticsImpl1026Library - Prepare com.google.firebase:firebase-analytics-impl:10.2.6
app:prepareComGoogleFirebaseFirebaseAppindexing1024Library - Prepare com.google.firebase:firebase-appindexing:10.2.4
app:prepareComGoogleFirebaseFirebaseCommon1026Library - Prepare com.google.firebase:firebase-common:10.2.6
app:prepareComGoogleFirebaseFirebaseCore1026Library - Prepare com.google.firebase:firebase-core:10.2.6
app:prepareComGoogleFirebaseFirebaseIid1026Library - Prepare com.google.firebase:firebase-iid:10.2.6
app:prepareComGoogleFirebaseFirebaseMessaging1026Library - Prepare com.google.firebase:firebase-messaging:10.2.6
app:prepareComMindorksPlaceholderview027Library - Prepare com.mindorks:placeholderview:0.2.7
app:prepareDebugAndroidTestDependencies
app:prepareDebugDependencies
app:prepareDebugUnitTestDependencies
app:prepareInfoHoang8fAndroidSegmented105Library - Prepare info.hoang8f:Android-segmented:1.0.5
app:prepareIoFabricSdkAndroidFabric1316Library - Prepare io.fabric.sdk.Android:fabric:1.3.16
app:prepareNoNordicsemiAndroidLog211Library - Prepare no.nordicsemi.Android:log:2.1.1
app:prepareNoNordicsemiAndroidSupportV18Scanner100Library - Prepare no.nordicsemi.Android.support.v18:scanner:1.0.0
この場合、私は25.3.1をターゲットにしていましたが、このコマンドを実行したときにいくつかの依存関係が異なるバージョンをターゲットにしていました。トリックは、以前のバージョンをターゲットにしているこのリスト内の依存関係を識別し、それをGradleの依存関係の最新バージョンをインポートすることによって上書きすることです。
すべてのFacebook SDK依存関係があなたのプロジェクトの同じサポートライブラリバージョンを使うことを確認してください:
dependencies {
// Facebook SDK dependencies, excluding Bolts
compile "com.Android.support:appcompat-v7:25.4.0"
compile "com.Android.support:cardview-v7:25.4.0"
compile "com.Android.support:customtabs:25.4.0"
compile "com.Android.support:design:25.4.0"
compile "com.facebook.Android:facebook-Android-sdk:4.23.0"
}
Android Studio 2.3にアップデートした後に同じ問題が発生した場合は、次のパッケージをbuild.gradle
に追加してください。
compile 'com.Android.support:support-v13:25.3.1'
注: プロジェクトで使用されている他のサポートライブラリパッケージと一致するようにバージョンを変更してください。
プロジェクトの外部ライブラリを開くと、以前のバージョンを使用しているライブラリがあることがわかります。それらのライブラリについては言及していません。そのため、特定のライブラリバージョンを使用して問題を解決します。
私はエラーを取り除くためにgradleに以下の行を追加しなければなりませんでした
compile 'com.Android.support:animated-vector-drawable:25.2.0'
compile 'com.Android.support:preference-v7:25.2.0'
compile 'com.Android.support:customtabs:25.2.0'
compile 'com.Android.support:cardview-v7:25.2.0'
エラーを強調表示して「Alt + Enter」を押すと、次のオプションが表示されます。
ライブラリ依存関係の追加>意図設定の編集
これにより、support-compatとは異なる特定の問題サポート依存関係が表示されるメニューが表示されます。 gradle(com 'XXX')に依存関係を作成し、それをsupport-compatのバージョンと一致するように設定します。 gradleを同期すると完了です。
私にとっては、このエラーは私がインポートしたサードパーティのライブラリが古いGoogle Support Libraryモジュールを使用していたことが原因でした。私は単にそれらを最新バージョンに更新し(例えばGithubをチェックする)、そしてエラーは消えた。 build.gradle
に含まれているすべてのGoogle以外のライブラリが最新のものであることを確認することをお勧めします。
implementation 'com.Android.support:appcompat-v7:26.1.0'
このラインの後あなたはあなたのグラドルに新しいラインを加えなければなりません
implementation 'com.Android.support:design:26.1.0'
私のAndroid Support Repositoryを(revision:44.0.0); にアップデートしてから、sdk manager> SDK tools からAndroid SDKツールとEmulatorを最新バージョン25.3.1にアップデートしました。
私のプロジェクトにはこれらの依存関係がありました:
implementation 'com.Android.support.constraint:constraint-layout:1.1.3'
implementation 'com.Android.support:support-v4:28.0.0'
implementation 'com.Android.support:design:28.0.0'
implementation 'com.Android.support:support-media-compat:28.0.0'
implementation 'com.google.Android.gms:play-services-maps:16.1.0'
implementation 'com.google.firebase:firebase-database:17.0.0'
implementation 'com.google.firebase:firebase-storage:17.0.0'
implementation 'com.google.firebase:firebase-messaging:18.0.0'
implementation 'com.firebaseui:firebase-ui-storage:0.6.0'
これまでのところ何も間違っているようには見えませんでしたが、私はこのメッセージを受け取りました:
バージョン28.0.0、23.4.0が見つかりました。例には、com.Android.support:animated-vector-drawable:28.0.0およびcom.Android.support:palette-v7:23.4が含まれます。
それから私はやった:
$ ./gradlew -q dependencies app:dependencies --configuration debugAndroidTestCompileClasspath >> dep.txt
ファイル内でpaletteを検索し、firebase storageで使用されていることがわかりました。
\--- com.firebaseui:firebase-ui-storage:0.6.0
+--- com.Android.support:appcompat-v7:23.4.0 -> 28.0.0 (*)
+--- com.Android.support:palette-v7:23.4.0
追加後:
implementation 'com.Android.support:palette-v7:28.0.0'
解決されたようで、これ以上のエラーはありません。
//乾杯
Android Studio 2.3にアップデートした後にこの問題が発生しました
依存関係にこれらの行を追加することで私の問題は解決しました
compile 'com.Android.support:customtabs:25.2.0'
compile 'com.Android.support:palette-v7:25.2.0'
これを交換
compile 'com.Android.support:appcompat-v7:25.2.0'
これで
compile 'com.Android.support:appcompat-v7:25.3.1'
compile 'com.Android.support:mediarouter-v7:25.3.1'
再構築と優れたコーディング
下記の新しいライブラリをすべて実装した後に問題が発生している場合。私はこの'com.Android.support:appcompat-v7:27.1.0'
互換バージョンで上記と同じ問題に直面していました。
implementation 'com.Android.support:appcompat-v7:27.1.0'
implementation 'com.Android.support:design:27.1.0'
implementation 'com.Android.support:appcompat-v7:27.1.0'
implementation 'com.Android.support:mediarouter-v7:27.1.0'
implementation 'com.Android.support:recyclerview-v7:27.1.0'
implementation 'com.Android.support:cardview-v7:27.1.0'
implementation 'com.Android.support:support-v13:27.1.0'
implementation 'com.Android.support:support-v4:27.1.0'
これを置き換えるだけです
'com.Android.support:appcompat-v7:27.1.0'
これに
'com.Android.support:appcompat-v7:27.0.1'
アプリレベルの依存関係にこれらを追加する
implementation 'com.Android.support:asynclayoutinflater:28.0.0'
implementation 'com.Android.support:exifinterface:28.0.0'
implementation 'com.Android.support:animated-vector-drawable:28.0.0'
implementation 'com.Android.support:support-media-compat:28.0.0'
implementation 'com.Android.support:support-v4:28.0.0'
私のために私は追加することでエラーを解決しました:compile 'com.Android.support:design:<version>'
ビルドツールをサポートライブラリとまったく同じバージョンにする
例
Android {
compileSdkVersion 25
buildToolsVersion "25.0.0"
defaultConfig {
applicationId "com.itechnologyeg.*******"
minSdkVersion 16
targetSdkVersion 25
versionCode 1
versionName "1.0"
testInstrumentationRunner "Android.support.test.runner.AndroidJUnitRunner"
}
dependencies {
compile 'com.Android.support:appcompat-v7:25.0.0'
compile 'com.Android.support:animated-vector-drawable:25.0.0'
compile 'com.Android.support:mediarouter-v7:25.0.0'
compile 'com.Android.support:recyclerview-v7:25.0.0'
compile 'com.Android.support:cardview-v7:25.0.0'
compile 'com.Android.support:design:25.0.0'
}
この問題を引き起こす可能性があるもう一つのことは、あなたがこのような宣言を得た場合です:
compile 'com.Android.support:support-v4:25.3.1'
compile 'com.Android.support:appcompat-v7:25.3.1'
compile 'com.Android.support:recyclerview-v7:+'
+
は、25.3.1
より後のバージョンである可能性がある最新バージョンを取得することを意味します。 +
を25.3.1
のような特定のバージョンに置き換えます。
compile 'com.Android.support:support-v4:25.3.1'
compile 'com.Android.support:appcompat-v7:25.3.1'
compile 'com.Android.support:recyclerview-v7:25.3.1'
そしてそれは問題を解決します
問題は次の方法で解決できます。
AndroidManifest.xml
ファイルを開きます。Android:value
のmeta-data
属性を変更するように言うならば、これはその変更をする場所です。build.gradle
ファイルに含めたバージョンでそれを変更します。現在のバージョンより小さいバージョンをコピーして、現在のバージョンと同じバージョン番号で明示的に追加するだけです。
例
バージョン27.1.1、27.1.0が見つかりました。例としては、com.Android.support:animated-vector-drawable:27.1.1やcom.Android.support:exifinterface:27.1.0があります。
バージョンcom.Android.support:exifinterface:27.1.0
をコピーしてそれをcom.Android.support:exifinterface:27.1.1
に変更して、現在使用している現在のバージョンと同じになるようにして、次のようにgradle依存関係に追加します。
implementation 'com.Android.support:exifinterface:27.1.1'
注:完了したら、エディターの上部にある 今すぐ同期 をクリックすることを忘れないでください。
私はAndroidのスタジオ3.4と28.0.0にSDKのバージョンにアップグレードした後、この問題に直面しています。以下の依存関係を適用することは私のために問題を解決しました。
implementation 'com.Android.support:exifinterface:28.0.0'
すべてのcom.Android.supportライブラリは、まったく同じバージョン仕様を使用する必要があります(バージョンを混在させるとランタイムクラッシュが発生する可能性があります)。バージョン25.1.1、24.0.0が見つかりました。例としては、com.Android.support:animated-vector-drawable:25.1.1およびcom.Android.support:mediarouter-v7:24.0.0があります。
この警告は通常、サポートライブラリを依存関係として使用しているため、Google Play Servicesを使用しているときに発生します。
Google Playサービスで使用されているサポートライブラリをオーバーライドできることを は知らなかった。次の依存関係を使うと
implementation "com.Android.support:animated-vector-drawable:25.1.1"
暗黙のうちにcom.Android.support:mediarouter-v7:25.1.1
に依存します。しかしそれはcom.Android.support:mediarouter-v7:24.0.0
であるGoogle Play Serviceの依存関係と衝突します。そのため、ライブラリを明示的に使用してオーバーライドする必要があります。
implementation "com.Android.support:mediarouter-v7:25.1.1"
それで、あなたの依存関係ブロックはこのようにそれらの両方を含みます:
dependencies {
implementation "com.Android.support:animated-vector-drawable:25.1.1"
implementation "com.Android.support:mediarouter-v7:25.1.1"
...
}
私は追加することによってコンパイルすることができた(非常にきれいではない)
私はエラーを取り除くためにgradleに以下の行を追加しなければなりませんでした。
compile 'com.Android.support:appcompat-v7:26+'
compile 'com.Android.support:mediarouter-v7:26+'
それは、単純に、すべてのv7とv4のライブラリに、あなたが依存関係の直前に設定したライブラリバージョンを使うことを強制するだけです。
configurations.all {
// To resolve the conflict for com.Android.databinding
// dependency on support-v4:21.0.3
resolutionStrategy.force 'com.Android.support:support-v4:28.0.0'
resolutionStrategy.force 'com.Android.support:support-v7:28.0.0'
}
私の問題は解決しました以下の最新の依存関係を追加implementation 'com.google.firebase:firebase-auth:16.0.4'
約5時間を費やした後、この解決策は私のために働きました..
まだ持っていない場合は、最初にこの行をマニフェストタグに追加します。
xmlns:tools="http://schemas.Android.com/tools"
例:
<manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
package="com.winanainc"
Android:versionCode="3"
Android:versionName="1.2"
xmlns:tools="http://schemas.Android.com/tools">
それからあなたのアプリケーション内にこのメタタグを追加してあなたがビルドツールのバージョンを上書きするようにしてください。
<application>
...
..
<meta-data
tools:replace="Android:value"
Android:name="Android.support.VERSION"
Android:value="25.3.1" />
</application>
// noinspectionを追加するだけです。GradleCompatible:
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.Android.support.constraint:constraint-layout:1.1.3'
testImplementation 'junit:junit:4.12'
//noinspection GradleCompatible
implementation 'com.Android.support:appcompat-v7:28.0.0'
唯一の方法があります...そして手動でやらなければいけません... build.gradle checkに行き、すべての依存関係を同じバージョンに割り当ててください。そしてうまくいくはずです。
グライドライブラリによるこのエラー。ピカソや他の画像ライブラリを試す