Todas las bibliotecas com.android.support deben usar exactamente la misma especificación de versión

Después de actualizar a android studio 2.3 recibí este mensaje de error. Sé que es sólo una pista, ya que la aplicación funciona normalmente, pero es realmente extraño.

Todas las bibliotecas de com.android.support deben usar exactamente la misma especificación de versión (las versiones de mezcla pueden provocar lockings en el tiempo de ejecución). Se encontraron versiones 25.1.1, 24.0.0. Los ejemplos incluyen com.android.support:animated-vector-drawable:25.1.1 y com.android.support:mediarouter-v7:24.0.0

enter image description here

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

Puede resolver esto con una de las siguientes soluciones:

Actualizar:

A partir de Android Studio 3.0, se vuelve mucho más fácil, ya que ahora muestra una pista más útil, por lo que solo tenemos que seguir esta sugerencia.
por ejemplo: 1]

Todas las bibliotecas de com.android.support deben usar exactamente la misma especificación de versión (las versiones de mezcla pueden provocar lockings en el tiempo de ejecución). Versiones encontradas 27.0.2, 26.1.0. Los ejemplos incluyen com.android.support:animated-vector-drawable:27.0.2 y com.android.support:customtabs:26.1.0

hay algunas combinaciones de bibliotecas, o herramientas y bibliotecas, que son incompatibles, o pueden dar lugar a errores. Una de estas incompatibilidades es comstackr con una versión de las bibliotecas de soporte de Android que no es la última versión (o, en particular, una versión más baja que su targetSdkVersion).

Solución:
Agregue explícitamente la biblioteca con la versión anterior pero con un nuevo número de versión.
en mi caso, com.android.support:customtabs:26.1.0 así que necesito agregar:

 implementation "com.android.support:customtabs:27.0.2" 

es decir: tome la biblioteca del segundo elemento e impleméntela con el número de versión del primero.

Nota: no olvides presionar sync ahora para que gradle pueda reconstruir el gráfico de dependencia y ver si hay más conflictos.

Explicación:
usted puede confundirse con el mensaje de error ya que no usa customtabs así que ¡cómo tengo un conflicto!
bueno … no lo customtabs directamente pero una de tus bibliotecas usa una versión anterior de customtabs internamente, por lo que debes solicitarla directamente.

si tiene curiosidad por saber cuál de sus bibliotecas es responsable de la versión anterior y tal vez le pida al autor que actualice su lib, ejecute un informe de dependencia de Gradle, consulte la respuesta anterior para saber cómo hacerlo.

Tenga en cuenta esto


Respuesta anterior:

inspirado por la respuesta de CommonsWare :

Ejecute un informe de dependencia de Gradle para ver cuál es su árbol completo de dependencias.

A partir de ahí, verá cuál de sus bibliotecas solicita una versión diferente de las bibliotecas de soporte de Android. Para lo que sea que esté pidiendo, puede solicitarlo directamente con la versión 25.2.0 o usar los otros enfoques de resolución de conflictos de Gradle para obtener las mismas versiones.


Actualizar:

A partir de la versión de plugin de gradle: 3.0 compile ha sido reemplazado por la implementation o api ver esta respuesta para la diferencia.

por lo tanto use en su lugar:

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

y busca la versión conflictiva.

Para mí, el error desapareció después de eliminar com.google.android.gms:play-services:10.2.0

Y solo incluya com.google.android.gms:play-services-location:10.2.0 y com.google.android.gms:play-services-maps:10.2.0 ya que son los únicos dos servicios de reproducción que uso.

Creo que los gms:play-services dependen de algunos componentes antiguos de la biblioteca de soporte, por lo que debemos agregarlos explícitamente a nosotros mismos.


para AS 3.0 un mayor.

Correr:

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

Ejemplo:

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

si alguien conoce una forma mejor en el nuevo plugin de gradle, por favor avíseme.

  1. Vaya a la carpeta project/.idea/libraries en su sistema de archivos y vea qué bibliotecas son diferentes.
  2. Tendrá que incluir manualmente estas bibliotecas con la misma versión en su archivo build.gradle .
  3. Luego, sincroniza tu proyecto.

P.ej:

 compile 'com.android.support:appcompat-v7:25.2.0' // Wrong library version found on 1st point compile 'com.android.support:customtabs:25.2.0' 

Para todos los casos, no solo para estas versiones o bibliotecas:

Preste atención a la pequeña ventana de información que dice algo sobre el error, dice los ejemplos que debe cambiar y agregar .

En este caso:

Se encontraron versiones 25.1.1, 24.0.0. Los ejemplos incluyen com.android.support:animated-vector-drawable:25.1.1 y com.android.support:mediarouter-v7:24.0.0

Tu

com.android.support:animated-vector-drawable:25.1.1

es la versión 25.1.1 , y su

com.android.support:mediarouter-v7:24.0.0

es la versión 24.0.0 , por lo que debe agregar el mediarouter con la misma versión:

 com.android.support:mediarouter-v7:25.1.1 

Y haga eso para cada ejemplo que dice la pequeña ventana de información, en este caso todas las bibliotecas que no tienen la versión 25.1.1.

Tienes que sincronizar el gradle después de que arregles la biblioteca indicada para ver la próxima biblioteca y paquete que tienes que cambiar.

IMPORTANTE:

Si no está utilizando explícitamente una o más bibliotecas especificadas y le está dando el error, significa que otra biblioteca está utilizando internamente, compílelo explícitamente de todos modos.

También puede usar otro método para ver la diferencia de las versiones de todas las bibliotecas que está comstackndo (como ejecutar un informe de dependencia de gradle o ir a los archivos de su biblioteca), el objective real es comstackr todas las bibliotecas que está utilizando con la misma versión .

Agregue esto al final de su build.gradle (Módulo: aplicación):

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

Asegúrese de reemplazar ’25 .3.1 ‘con la versión de la biblioteca de soporte de Android que desee utilizar para todas las dependencias, no debe ser menor que su versión de compile sdk

que volver a sincronizar gradle

Tuve exactamente el mismo problema después de actualizar a Android Studio 2.3

Agregar esta línea a las dependencias resolvió mi problema:

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

A) Ejecutar gradle dependencies ./gradlew dependencies o ./gradlew dependencies

B) Mire su árbol y descubra cuál de sus dependencias está especificando una versión de biblioteca de soporte diferente para una dependencia que no controla.

No me di cuenta de que esta advertencia también se muestra si la dependencia no está completamente utilizada directamente por su propio código. En mi caso, Facebook especifica algunas librerías de soporte que no estaba usando, se puede ver a continuación la mayoría de esas dependencias fueron anuladas por mi propia especificación de 25.2.0, denotada por los símbolos -> XXX (*) . La vista de tarjeta y las tabs personalizadas libs no fueron reemplazadas por nadie, así que tengo que pedir 25.2.0 para esas mismas aunque no las use.

 +--- 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 (*) 

Si Gradle ya te lo advirtió y te dio ejemplos …

Los ejemplos incluyen com.android.support:animated-vector-drawable:25.1.1 y com.android.support:mediarouter-v7:24.0.0

… es incluso más fácil si gradle dependencies algo de resaltado grep para la versión más baja ya que gradle dependencies pueden ser muy detalladas:

 ./gradlew dependencies | grep --color -E 'com.android.support:mediarouter-v7|$' 

Usar variables : al hacer algo como lo siguiente, le será más fácil asegurarse de usar la misma versión con todas las bibliotecas

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

Puede encontrar más información sobre cómo Google sugiere que maneje este control de versiones en este artículo: https://developer.android.com/studio/build/index.html#top-level

Solo agrego esto:

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

Updated para nuevas versiones de SDK

 compile 'com.android.support:mediarouter-v7:28.0.0-alpha3' 

Si el mismo error está en appcompat

 implementation 'com.android.support:appcompat-v7:27.0.1' 

luego agregar el design resolvió.

 implementation 'com.android.support:appcompat-v7:27.0.1' implementation 'com.android.support:design:27.0.1' 

Para mí, agregando

 implementation 'de.mrmaffen:vlc-android-sdk:2.0.6' 

appcompat-v7:23.1.1 en

.idea / libraries

sin vlc , appcompat solo es suficiente.

Como ya ha visto, todas las respuestas y comentarios anteriores, pero esta respuesta es aclarar algo que un nuevo desarrollador podría no obtener fácilmente.

Aplicación de dependencias ./gradlew -q: dependencias – comstackción de configuración

La línea anterior le salvará la vida sin ninguna duda, pero cómo obtener el punto exacto del resultado de la línea anterior.

Cuando obtiene la tabla o lista de todas las dependencias del comando anterior, entonces tiene que buscar el número de versión conflictiva que está obteniendo en su código. por favor, mira la imagen de abajo.

enter image description here

En la imagen de arriba puedes ver que 23.4.0 está creando el problema, pero no podemos encontrarlo en nuestro archivo gradle. Entonces ahora este número de versión (23.4.0) nos salvará. Cuando tengamos este número, encontraremos este número en el resultado del resultado del comando anterior e importaremos directamente esa dependencia directamente en nuestro archivo gradle. Por favor, mira la imagen de abajo para obtener una vista clara.

puede ver claramente que com.android.support:cardview-v7:23.4.0 y com.android.support:customtabs:23.4.0 están utilizando la versión que está creando el problema. Ahora simplemente copie esa línea de la lista de dependencias y explícitamente use en nuestro archivo gradle pero con el enlace de la versión actualizada

implementación “com.android.support:cardview-v7:26.1.0” implementation “com.android.support:customtabs:26.1.0”

Utilice support-v13 en lugar de support-v4

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

Otra forma de resolver conflictos es simplemente forzar la versión correcta para todas las dependencias como esta:

 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

La mejor manera de resolver el problema es implementar todos los ‘com.android.support: …’ sugeridos por android studio

coloque el cursor en la línea de error, por ejemplo:

 implementation 'com.android.support:appcompat-v7:27.1.1' 

android studio le sugerirá qué ‘com.android.support: …’ es una versión diferente de ‘com.android.support:appcompat-v7:27.1.1’

ejemplo

Todas las bibliotecas de com.android.support deben usar exactamente la misma especificación de versión (las versiones de mezcla pueden provocar lockings en el tiempo de ejecución). Versiones encontradas 27.1.1, 27.1.0, 27.0.2. Los ejemplos incluyen com.android.support:animated-vector-drawable:27.1.1 y com.android.support:exifinterface:27.1.

así que agregue com.android.support:animated-vector-drawable:27.1.1 y com.android.support:exifinterface:27.1 . ahora sincroniza el archivo gradle.

uno por uno intente implementar todo el ‘soporte com.android.support sugerido: …’ hasta que no haya ningún error en la implementation 'com.android.support:appcompat-v7:27.1.1' de esta línea implementation 'com.android.support:appcompat-v7:27.1.1'

En mi caso, agregué

 implementation 'com.android.support:appcompat-v7:27.1.1' implementation 'com.android.support:animated-vector-drawable:27.1.1' implementation 'com.android.support:exifinterface:27.1.1' implementation 'com.android.support:cardview-v7:27.1.1' implementation 'com.android.support:customtabs:27.1.1' implementation 'com.android.support:support-media-compat:27.1.1' implementation 'com.android.support:support-v4:27.1.1' 

todas estas dependencias … podría ser diferente para otros.

Mi problema es similar al tuyo Aquí existe un error!

compile 'com.android.support:appcompat-v7:25.3.0'

Todas las bibliotecas de com.android.support deben usar exactamente la misma especificación de versión (las versiones de mezcla pueden provocar lockings en el tiempo de ejecución). Se encontraron versiones 25.3.0, 24.0.0. Los ejemplos incluyen ‘com.android.support:animated-vector-drawable:25.3.0’ y ‘com.android.support:mediarouter-v7:24.0.0’

Al ver esto, los ejemplos incluyen ‘com.android.support:animated-vector-drawable:25.3.0’ y ‘com.android.support:mediarouter-v7:24.0.0’.

simplemente agregue estos códigos en dependencias, asegúrese de que las versiones sean las mismas.

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

Tenía esto:

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

y obtuve este error: enter image description here

Las soluciones fueron sencillas: las dependencias principales eran todas correctas, por lo que las hojas son dependencias de terceros. Se eliminó uno por uno hasta que encontró al culpable, ¡y resulta ser Facebook! está usando la versión 27.0.2 de las bibliotecas de soporte de Android. Traté de agregar la versión de tarjeta de vista 27.1.1 pero tampoco funcionó, la solución aún era lo suficientemente simple.

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

Obtuve el mismo error después de agregar compile 'com.google.android.gms:play-services:10.2.4' con comstackción 'com.android.support:appcompat-v7:25.3.1' .

Agregar mediarouter libs animated-vector-drawable y mediarouter libs solucionó el problema.

 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' 

Usé estos dos para resolver mi problema después de actualizar a Android Studio 2.3

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

Tuve el mismo problema antes y obtuve la solución para ello.

Acabo de agregar las bibliotecas que tenían la otra versión pero con la misma versión de mi support:appcompat .

Por su error, por ejemplo:

Todas las bibliotecas de com.android.support deben usar exactamente la misma especificación de versión (las versiones de mezcla pueden provocar lockings en el tiempo de ejecución). Se encontraron versiones 25.1.1, 24.0.0. Los ejemplos incluyen com.android.support:animated-vector-drawable:25.1.1 y com.android.support:mediarouter-v7:24.0.0

* La solución es comstackr las versiones de estas bibliotecas así:

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

-si otra biblioteca tiene el mismo problema y tiene otra versión solo compile con su support:appcompat versión de support:appcompat

Esto resolvió mi problema y espero que resuelva el tuyo.

Los mejores deseos 🙂

Tengo el mismo problema pero lo resolví agregando esas tres líneas

 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' 

ahora Todo funciona a la perfección

Ha definido cualquier otra dependencia para comstackr con la versión 24.0.0 lugar de 25.1.1 . Configure todas las dependencias de la misma manera que 25.1.1 .

Abra la biblioteca externa de su proyecto, verá que alguna biblioteca aún está usando la versión anterior, aunque no mencionó esa biblioteca, por lo que mi sugerencia es simplemente usar la versión de biblioteca particular para aquellos que resolverán su problema.

Acabo de actualizar mi repository de soporte de Android a (revisión: 44.0.0); luego herramientas Android SDK y emulador a la última versión 25.3.1 de sdk manager> SDK tools Y resolvió mi problema.

Tuve que agregar las siguientes líneas en gradle para eliminar el error

 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' 

Ejecuté tareas ./gradlew –todo y comprobé las dependencias que eran una versión diferente de la versión específica (25.3.1). Obtendrás algo como esto:

 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 

En este caso, tenía como objective 25.3.1, y tenía algunas dependencias que apuntaban a diferentes versiones cuando ejecutaba este comando. El truco consiste en identificar las dependencias de esta lista que se dirigen a versiones anteriores y anularlas mediante la importación de la versión más reciente de la dependencia en Gradle.

Asegúrese de que todas las dependencias de SDK de Facebook utilicen la misma versión de biblioteca de soporte de su proyecto:

 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" } 
 implementation 'com.android.support:appcompat-v7:26.1.0' 

después de esta línea, debes agregar una nueva línea en tu gradle

 implementation 'com.android.support:design:26.1.0' 

Aquí está mi flujo para arreglar esta advertencia

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 view/verify the dependencies of all library in your app
Open terminal and run ./gradlew app:dependencies

To view the dependencies of a specific library in your app follow tutorial here :- How to exclude dependencies of a particular dependency in Gradle

Hope it help

I got this problem after updating to Android Studio 2.3

Adding these lines in dependencies solved my problem

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

For me, the error was a result of a third-party library that I imported that used older Google Support Library modules. I simply updated them to the latest version (checking on Github for example), and the error was gone. I suggest checking all the non-Google libraries that you included in your build.gradle are up to date.

remplace this

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

by this

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

rebuild and good coding