Все библиотеки com.android.support должны использовать ту же самую спецификацию версии

После обновления до 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

Введите описание изображения здесь

Моя градация:

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

Solutions Collecting From Web of "Все библиотеки com.android.support должны использовать ту же самую спецификацию версии"

Вы можете решить это с помощью одного из следующих решений:

Запустите отчет зависимости Gradle, чтобы узнать, что такое полное дерево зависимостей. Оттуда вы увидите, какая из ваших библиотек запрашивает другую версию библиотек поддержки Android. Что бы он ни запрашивал, вы можете попросить его напрямую с версией 25.2.0 или использовать другие подходы к разрешению конфликтов Gradle для организации получения той же версии.

Бег:

 ./gradlew -q dependencies <module-name>:dependencies --configuration compile 

Пример:

 ./gradlew -q dependencies app:dependencies --configuration compile 

Для меня ошибка исчезла после удаления 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-location:10.2.0 и com.google.android.gms:play-services-maps:10.2.0 как они являются только двумя игровыми сервисами, которые я использую.

Я думаю, что gms:play-services зависят от некоторых старых компонентов библиотеки поддержки, поэтому нам нужно их явно добавить.

  1. Перейдите в Project Files/My project/.idea/libraries и посмотрите, какие библиотеки отличаются.
  2. Вам придется вручную включить эти библиотеки с той же версией в файл build.gradle .
  3. Затем синхронизируйте свой проект.

Например:

 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.

Вы должны синхронизировать град после исправления указанной библиотеки, чтобы увидеть следующую библиотеку и пакет, которые вы должны изменить.

Если вы явно не используете одну или несколько указанных библиотек, и она дает вам ошибку, это означает, что она используется внутри другой библиотеки, в любом случае ее компилировать явно.

У меня была такая же проблема после обновления до Android Studio 2.3

Добавление этой строки в зависимости решало мою проблему:

 compile 'com.android.support:customtabs:25.2.0' 

Я просто добавляю это:

 compile 'com.android.support:mediarouter-v7:25.2.0' 

Updated для новых версий SDK

 compile 'com.android.support:mediarouter-v7:25.3.1' 

A) Запуск gradle dependencies ./gradlew dependencies или ./gradlew dependencies

B) Посмотрите на свое дерево и выясните, какая из ваших зависимостей указывает другую версию библиотеки поддержки для зависимости, которую вы не контролируете.

Я не знал, что это предупреждение также отображает, если зависимость полностью не используется непосредственно вашим собственным кодом. В моем случае Facebook указывает некоторые библиотеки поддержки, которые я не использовал, вы можете видеть, что большинство из этих зависимостей были переопределены моей собственной спецификацией 25.2.0, обозначенной символами -> XXX (*) . Просмотр карт и пользовательские вкладки libs не были переопределены кем-либо, поэтому мне нужно запросить у них 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 (*) 

Использовать переменные : делать что-то вроде следующего упростит для вас, чтобы вы использовали одну и ту же версию со всеми библиотеками

 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}" 

Используйте поддержку-v13 вместо поддержки-v4

 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' 

Я использовал эти два решения для решения моей проблемы после обновления до android studio 2.3

 compile 'com.android.support:animated-vector-drawable:25.0.0' compile 'com.android.support:mediarouter-v7:25.0.0' 

Моя проблема похожа на вашу. Здесь есть ошибка!

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 версия support:appcompat

Это разрешило мою проблему, и я надеюсь, что она решит вашу проблему.

С наилучшими пожеланиями 🙂

Вы определили любую другую зависимость для компиляции с версией 24.0.0 вместо 25.1.1 . Установите все версии зависимостей так же, как и 25.1.1 .

Откройте внешнюю библиотеку вашего проекта, вы увидите, что в какой-то библиотеке по-прежнему используется предыдущая версия, хотя вы не упомянули об этой библиотеке, поэтому мое предложение просто использует конкретную версию библиотеки для тех, кто решит вашу проблему.

Я просто обновляю свой репозиторий поддержки Android (версия: 44.0.0); Затем инструменты Android SDK и эмулятор до последней версии 25.3.1 из sdk manager> Инструменты SDK И это решило мою проблему.

Я должен был добавить следующие строки в градиенте, чтобы удалить ошибку

 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' 

Я получил эту проблему после обновления до Android Studio 2.3

Добавление этих строк в зависимости решало мою проблему

 compile 'com.android.support:customtabs:25.2.0' compile 'com.android.support:palette-v7:25.2.0' 

Для меня эта ошибка возникла из-за того, что импортированная библиотека сторонних разработчиков использовала более старые модули библиотеки поддержки Google. Я просто обновил их до последней версии (например, на Github), и ошибка исчезла. Я предлагаю проверить все библиотеки, отличные от Google, которые вы включили в свой build.gradle , обновлены.

Имел такой же вопрос после обновления до Android Studio 2.3, исправление заключалось в том, чтобы добавить следующий пакет в build.gradle :

compile 'com.android.support:support-v13:25.3.1'

Примечание. Измените версию в соответствии с другими пакетами библиотек поддержки, используемыми в вашем проекте.

Замените это

 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' 

Восстановление и хорошее кодирование

Мне удалось скомпилировать (не очень чистый), добавив

Описание изображения здесь

Попробуйте сделать инструменты сборки одинаковой версией библиотеки поддержки

пример

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

Я выполнил задачи ./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.

Убедитесь, что все зависимости в формате SDK для Facebook используют ту же версию поддерживающей библиотеки вашего проекта:

 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" } 

Есть только один способ … и вам нужно сделать это вручную … перейдите в build.gradle check, чтобы назначить все зависимости к тем же версиям .. и это должно сработать.

Еще одна вещь, которая может решить эту проблему, – это получить такие объявления:

 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 и она решит проблему