it-swarm-id.com

Semua pustaka com.Android.support harus menggunakan spesifikasi versi yang sama persis

Setelah memperbarui ke Android studio 2.3 saya mendapat pesan kesalahan ini . Saya tahu itu hanya petunjuk karena aplikasi berjalan secara normal tetapi itu benar-benar aneh.

Semua pustaka com.Android.support harus menggunakan spesifikasi versi yang sama persis (pencampuran versi dapat menyebabkan crash runtime). Ditemukan versi 25.1.1, 24.0.0. Contohnya termasuk com.Android.support:animated-vector-drawable:25.1.1 dan com.Android.support:mediarouter-v7:24.0.0

 enter image description here

kelas saya:

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:[email protected]'
    compile('com.mikepenz:materialdrawer:[email protected]') { transitive = true }
    compile 'com.mikepenz:google-material-typeface:[email protected]'
    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'
}
669
humazed

Anda dapat menyelesaikan ini dengan salah satu solusi berikut:

Memperbarui:

Pada Android studio 3.0, itu menjadi jauh lebih mudah karena sekarang menunjukkan petunjuk yang lebih bermanfaat, jadi kita hanya perlu mengikuti petunjuk ini.
sebagai contoh:1]

Semua pustaka com.Android.support harus menggunakan versi yang sama persis spesifikasi (versi campuran dapat menyebabkan crash runtime). Ditemukan versi 27.0.2, 26.1.0. Contohnya termasuk com.Android.support:animated-vector-drawable:27.0.2 dan com.Android.support:customtabs:26.1.0

ada beberapa kombinasi perpustakaan, atau alat dan perpustakaan, yang tidak kompatibel, atau dapat menyebabkan bug. Salah satu ketidakcocokan tersebut adalah kompilasi dengan versi pustaka dukungan Android yang bukan versi terbaru (atau khususnya, versi lebih rendah dari targetSdkVersion Anda.)

Solusi:
Tambahkan perpustakaan secara eksplisit dengan versi lama tetapi dengan nomor versi baru.
dalam kasus saya com.Android.support:customtabs:26.1.0 jadi saya perlu menambahkan: 

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

yaitu: Ambil perpustakaan dari item kedua, dan implementasikan dengan nomor versi dari yang pertama.

Catatan: jangan lupa untuk menekan sync sekarang sehingga gradle dapat membangun kembali grafik dependensi dan melihat apakah ada konflik lagi.

Penjelasan:
Anda mungkin bingung dengan pesan kesalahan karena jangan gunakan customtabs jadi bagaimana saya memiliki konflik !!
well .. Anda tidak menggunakannya secara langsung tetapi salah satu perpustakaan Anda menggunakan versi lama customtabs secara internal, jadi Anda perlu memintanya secara langsung. 

jika Anda ingin tahu perpustakaan mana yang bertanggung jawab untuk versi lama dan mungkin meminta penulis untuk memperbarui libnya, Jalankan laporan ketergantungan Gradle, lihat jawaban lama untuk mengetahui caranya.

Catat ini 


Jawaban lama:

terinspirasi oleh Jawaban CommonsWare :

Jalankan laporan dependensi Gradle untuk melihat pohon lengkap Anda dari dependensi

Dari sana, Anda akan melihat perpustakaan mana yang meminta versi lain dari perpustakaan Dukungan Android . Untuk apa pun yang diminta, Anda dapat memintanya secara langsung dengan versi 25.2.0 atau menggunakan Resolusi penyelesaian konflik Gradle lainnya untuk mendapatkan versi yang sama.


Memperbarui:

Pada versi plugin gradle: 3.0 compile telah digantikan oleh implementation atau api lihat jawaban ini untuk perbedaannya.

karenanya gunakan sebagai berikut:

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

atau untuk windows cmd: 

gradlew -q dependencies app:dependencies --configuration debugAndroidTestCompileClasspath

dan cari versi yang konflik.

Bagi saya, kesalahan itu hilang setelah menghapus com.google.Android.gms:play-services:10.2.0

Dan hanya menyertakan com.google.Android.gms:play-services-location:10.2.0 dan com.google.Android.gms:play-services-maps:10.2.0 karena keduanya adalah satu-satunya layanan bermain yang saya gunakan.

Saya pikir gms:play-services bergantung pada beberapa komponen lama dari pustaka dukungan, jadi kita perlu menambahkannya sendiri secara eksplisit.


untuk AS 3.0 yang lebih tua.

Menjalankan:

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

Contoh:

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

jika ada yang tahu cara yang lebih baik di plugin gradle baru beri tahu saya.

783
humazed
  1. Buka folder project/.idea/libraries pada sistem file Anda dan lihat perpustakaan mana yang berbeda.
  2. Anda harus memasukkan pustaka-pustaka ini secara manual dengan versi yang sama dalam file build.gradle Anda.
  3. Kemudian, sinkronkan proyek Anda.

Misalnya.:

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

// Wrong library version found on 1st point
compile 'com.Android.support:customtabs:25.2.0'
195

Untuk semua kasus, tidak hanya untuk versi atau pustaka ini:

Perhatikan jendela informasi kecil yang mengatakan sesuatu tentang kesalahan, ia mengatakan contoh yang harus Anda ubah dan tambahkan .

Pada kasus ini:

Ditemukan versi 25.1.1, 24.0.0. Contohnya termasuk com.Android.support:animated-vector-drawable:25.1.1 dan com.Android.support:mediarouter-v7:24.0.0

Anda  

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

adalah versi 25.1.1, dan  

com.Android.support:mediarouter-v7:24.0.0

adalah versi 24.0.0, jadi Anda harus menambahkan mediarouter dengan versi yang sama:

com.Android.support:mediarouter-v7:25.1.1

Dan lakukan itu untuk setiap contoh yang mengatakan jendela informasi kecil, dalam hal ini semua perpustakaan yang tidak memiliki versi 25.1.1.

Anda harus menyinkronkan gradle setelah Anda memperbaiki pustaka yang ditunjukkan untuk melihat pustaka dan paket berikutnya yang harus Anda ubah.

PENTING:

Jika Anda tidak secara eksplisit menggunakan satu atau lebih perpustakaan yang ditentukan dan itu memberi Anda kesalahan, itu berarti sedang digunakan secara internal oleh perpustakaan lain, tetap kompilasi secara eksplisit.

Anda juga dapat menggunakan metode lain untuk melihat perbedaan versi semua pustaka yang sebenarnya Anda kompilasi (seperti menjalankan laporan dependensi gradle atau membuka file pustaka Anda), tujuan sebenarnya adalah mengkompilasi semua pustaka yang ada gunakan dengan versi yang sama .

141
Brandon Zamudio

Tambahkan ini ke akhir build.gradle Anda (Modul: aplikasi):

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

   }
}

Pastikan Anda mengganti '25 .3.1 'dengan versi pustaka dukungan Android yang ingin Anda gunakan untuk semua dependensi, itu tidak boleh lebih rendah dari versi sdk Anda yang lemah

dari sinkronisasi ulang gradle

88
ezzou

Cara terbaik untuk menyelesaikan masalah adalah mengimplementasikan semua 'com.Android.support: ...' yang disarankan oleh Android studio

(tidak masalah versi dukungan yang Anda gunakan - 27.1.1, 28.0.0 dll.)

tempatkan kursor ke garis kesalahan mis:

implementation 'com.Android.support:appcompat-v7:28.0.0'

Studio Android akan menyarankan Anda yang 'com.Android.support: ...' versi berbeda dari 'Com.Android.support:appcompat-v7:28.0.0' 

contoh 

Semua pustaka com.Android.support harus menggunakan spesifikasi versi yang sama persis (pencampuran versi dapat menyebabkan crash runtime). Versi yang ditemukan 28.0.0, 27.1.0, 27.0.2. Contohnya termasuk com.Android.support:animated-vector-drawable:28.0.0 dan com.Android.support:exifinterface:27.1.0

jadi tambahkan com.Android.support:animated-vector-drawable:28.0.0 & com.Android.support:exifinterface:28.0.0. sekarang selaraskan file gradle.

satu per satu cobalah untuk mengimplementasikan semua yang disarankan 'com.Android.support: ...' sampai tidak ada kesalahan di baris ini implementation 'com.Android.support:appcompat-v7:28.0.0'

Dalam kasus saya, saya menambahkan 

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'

semua dependensi ini ... bisa berbeda untuk yang lain.

72
Adarsh Vijayan P

Saya memiliki masalah yang sama persis setelah memperbarui ke Android Studio 2.3

Menambahkan baris ini ke dependensi memecahkan masalah saya:

compile 'com.Android.support:customtabs:25.2.0'
53

A) Jalankan gradle dependencies atau ./gradlew dependencies

B) Lihatlah pohon Anda dan cari tahu mana dari dependensi Anda menentukan versi perpustakaan dukungan yang berbeda untuk dependensi yang tidak Anda kontrol.

Saya tidak menyadari bahwa peringatan ini juga ditampilkan jika dependensi sepenuhnya tidak digunakan secara langsung oleh kode Anda sendiri. Dalam kasus saya, Facebook menentukan beberapa lib dukungan yang tidak saya gunakan, Anda dapat melihat di bawah ini sebagian besar dependensi itu ditimpa oleh spesifikasi saya sendiri 25.2.0, dilambangkan dengan simbol -> X.X.X (*). Tampilan kartu dan tab kustom lib tidak ditimpa oleh siapa pun, jadi saya perlu meminta 25.2.0 untuk itu sendiri meskipun saya tidak menggunakannya.

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

Jika gradle sudah memperingatkan Anda dan memberi Anda contoh ...

Contohnya termasuk com.Android.support:animated-vector-drawable:25.1.1 dan com.Android.support:mediarouter-v7:24.0.0

... bahkan lebih mudah jika Anda memasukkan beberapa grep highlighting untuk versi yang lebih rendah karena gradle dependencies bisa sangat bertele-tele:

./gradlew dependencies | grep --color -E 'com.Android.support:mediarouter-v7|$'
44
Daniel Wilson

Gunakan variabel: Melakukan sesuatu seperti berikut ini akan memudahkan Anda untuk memastikan bahwa Anda menggunakan versi yang sama dengan semua pustaka

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

Informasi lebih lanjut tentang bagaimana Google menyarankan Anda menangani versi ini dapat ditemukan di artikel ini: https://developer.Android.com/studio/build/index.html#top-level

31
Daniel F

Saya hanya menambahkan ini:

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

Updated untuk versi SDK baru

compile 'com.Android.support:mediarouter-v7:28.0.0-alpha3'
25
Mohsen mokhtari

Jika kesalahan yang sama ada di appcompat

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

lalu menambahkan design memecahkannya.

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

Bagi saya, menambahkan

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

termasuk appcompat-v7:23.1.1 di 

.idea/perpustakaan 

tanpa vlc, appcompat saja sudah cukup.

19
Prabs

Seperti yang telah Anda lihat semua jawaban dan komentar di atas, tetapi jawaban ini adalah untuk menghapus sesuatu yang mungkin tidak mudah diperoleh pengembang baru.

./gradlew -q aplikasi dependensi: dependensi --compilasi konfigurasi 

Baris di atas akan menyelamatkan hidup Anda tanpa keraguan tetapi bagaimana mendapatkan poin yang tepat dari hasil baris di atas.

Ketika Anda mendapatkan semua bagan dependensi atau daftar dari perintah di atas maka Anda harus mencari nomor versi yang saling bertentangan yang Anda dapatkan dalam kode Anda. silakan lihat gambar di bawah ini.

 enter image description here

pada gambar di atas Anda dapat melihat bahwa 23.4.0 membuat masalah tetapi ini tidak dapat kami temukan di file gradle kami. Jadi sekarang nomor versi ini (23.4.0) akan menyelamatkan kita. Ketika kita memiliki nomor ini maka kita akan menemukan nomor ini di hasil dari hasil perintah di atas dan langsung mengimpor ketergantungan itu langsung ke file gradle kita. Silakan lihat gambar di bawah ini untuk mendapatkan tampilan yang jelas.

 

anda dapat dengan jelas melihat bahwa com.Android.support:cardview-v7:23.4.0 dan com.Android.support:customtabs:23.4.0 menggunakan versi yang menciptakan masalah. Sekarang cukup salin baris tersebut dari dependensi List dan gunakan secara eksplisit dalam file gradle kami tetapi dengan tautan versi yang diperbarui 

implementasi "com.Android.support:cardview-v7:26.1.0" implementasi "com.Android.support:customtabs:26.1.0"

17
anoopbryan2

Cara lain untuk menyelesaikan konflik adalah dengan memaksa versi yang benar untuk semua dependensi seperti ini:

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

13
Gainder

Gunakan dukungan-v13 alih-alih dukungan-v4

compile 'com.Android.support:support-v13:25.2.0'
12
Mehmet Hanoğlu

Saya mendapatkan kesalahan yang sama setelah menambahkan compile 'com.google.Android.gms:play-services:10.2.4' dengan kompilasi 'com.Android.support:appcompat-v7:25.3.1'.

Menambahkan animated-vector-drawable dan mediarouter libs memperbaiki masalah.

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'
9
Sandeep

Saya punya ini:

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

dan mendapat kesalahan ini:  enter image description here

Solusinya mudah - dependensi primer semuanya benar sehingga daun - ketergantungan pihak ketiga. Dihapus satu per satu sampai ditemukan pelakunya, dan ternyata menjadi facebook! itu menggunakan versi 27.0.2 dari perpustakaan dukungan Android. Saya mencoba menambahkan cardview versi 27.1.1 tetapi itu tidak berhasil meskipun solusinya masih cukup sederhana.

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

Masalah saya mirip dengan Anda . Di sini ada kesalahan!

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

Semua pustaka com.Android.support harus menggunakan spesifikasi versi yang sama persis (pencampuran versi dapat menyebabkan crash runtime). Ditemukan versi 25.3.0, 24.0.0. Contohnya termasuk 'com.Android.support:animated-vector-drawable:25.3.0' dan 'com.Android.support:mediarouter-v7:24.0.0'

Melihat ini Contohnya termasuk 'com.Android.support:animated-vector-drawable:25.3.0' dan 'com.Android.support:mediarouter-v7:24.0.0'

cukup tambahkan kode ini dalam dependensi, pastikan versinya sama.

compile 'com.Android.support:animated-vector-drawable:25.3.0'
compile 'com.Android.support:mediarouter-v7:25.3.0'
9
Yanbin Hu

Saya memiliki masalah yang sama sebelumnya dan saya mendapat solusinya.

Saya baru saja menambahkan perpustakaan yang memiliki versi lain tetapi dengan versi yang sama dari support:appcompat saya.

Untuk kesalahan Anda misalnya:

Semua pustaka com.Android.support harus menggunakan versi yang sama persis spesifikasi (versi campuran dapat menyebabkan crash runtime). Ditemukan versi 25.1.1, 24.0.0. Contohnya termasuk com.Android.support:animated-vector-drawable:25.1.1 dan com.Android.support:mediarouter-v7:24.0.0

* Solusinya adalah dengan mengkompilasi versi perpustakaan ini seperti itu:

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

-Jika perpustakaan lain memiliki masalah yang sama dan memiliki versi lain hanya kompilasi dengan versi support:appcompat Anda

Ini menyelesaikan masalah saya dan saya harap ini menyelesaikan masalah Anda.

Semoga sukses :)

8
Hesham Morsy

Saya menggunakan keduanya untuk menyelesaikan masalah saya setelah meningkatkan ke Android studio 2.3

compile 'com.Android.support:animated-vector-drawable:25.0.0'
compile 'com.Android.support:mediarouter-v7:25.0.0'
8
Aparajita Sinha

Setelah mencari dan menggabungkan jawaban, versi 2018 dari pertanyaan ini dan itu berhasil untuk saya:

1) Pada tab navigasi ubahlah ke tampilan proyek

2) Navigasikan ke [YourProjectName] /. Idea/libraries/

3) Hapus semua file yang dimulai dengan Gradle__com_Android_support_ [libraryName]

E.g: Gradle__com_Android_support_animated_vector_drawable_26_0_0.xml

4) Dalam file gradle Anda, tentukan variabel dan gunakan untuk mengganti nomor versi seperti $ {variableName}

Variabel def:

ext {
    support_library_version = '28.0.0' //use the version of choice
}

Gunakan variabel:

implementation "com.Android.support:cardview-v7:${support_library_version}"

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

}
6
Ali Karaca

Anda telah menetapkan ketergantungan lain untuk dikompilasi dengan versi 24.0.0 alih-alih 25.1.1. Silakan tetapkan semua versi dependensi sama dengan 25.1.1.

6
Sneh Pandya

Saya memiliki masalah yang sama tetapi saya menyelesaikan ini dengan menambahkan

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'

sekarang semuanya bekerja dengan sempurna

6
Hamza Rahman

Inilah aliran saya untuk memperbaiki peringatan ini

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

Ke melihat/memverifikasi dependencies dari semua perpustakaan di aplikasi Anda
Buka terminal dan jalankan ./gradlew app:dependencies

Ke melihat dependencies dari perpustakaan tertentu di aplikasi Anda, ikuti tutorial di sini: - Bagaimana mengecualikan dependensi dari dependensi tertentu di Gradle

Semoga ini bisa membantu

6
Linh

Saya menjalankan tugas ./gradlew --all dan memeriksa dependensi yang merupakan versi yang berbeda dari versi yang ditargetkan (25.3.1). Anda akan mendapatkan sesuatu seperti ini:

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

Dalam hal ini, saya menargetkan 25.3.1, dan memiliki beberapa dependensi yang menargetkan berbagai versi ketika saya menjalankan perintah ini. Caranya adalah mengidentifikasi dependensi dalam daftar ini yang menargetkan versi sebelumnya, dan menggantinya dengan mengimpor versi terbaru dari dependensi di Gradle.

6
Matt W

Pastikan semua dependensi SDK Facebook menggunakan versi perpustakaan dukungan yang sama dengan proyek Anda:

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"
}
5
JP Ventura

Mengalami masalah yang sama setelah memperbarui ke Android Studio 2.3, perbaikannya adalah menambahkan paket berikut di build.gradle:

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

Catatan: Ubah versi agar sesuai dengan paket pustaka dukungan lain yang digunakan dalam proyek Anda

5
Vahid Amiri

Buka pustaka eksternal proyek Anda, Anda akan melihat bahwa beberapa pustaka masih menggunakan versi sebelumnya meskipun Anda tidak menyebutkan pustaka tersebut sehingga saran saya hanya menggunakan versi pustaka tertentu untuk mereka yang akan memecahkan masalah Anda.

5
Subho

Saya menghadapi masalah ini setelah memutakhirkan ke Android studio 3.4 dan versi SDK ke 28.0.0. Menerapkan ketergantungan di bawah ini memecahkan masalah bagi saya.

    implementation 'com.Android.support:exifinterface:28.0.0'
5
Shaon

Saya harus menambahkan baris berikut dalam gradle untuk menghapus kesalahan

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'
5
Shrikant

Sorot kesalahan dan tekan "ALT + ENTER", Anda akan melihat opsi untuk:

Tambahkan ketergantungan perpustakaan> Edit pengaturan Niat

Ini akan membawa Anda ke menu tempat Anda akan melihat ketergantungan dukungan masalah khusus yang berbeda dengan dukungan-dukungan. Buat ketergantungannya dalam gradle (com 'XXX') dan atur versinya agar sesuai dengan yang didukung-dukungan. Sinkronkan gradle dan Anda selesai.

5
Raymond Wachaga

Bagi saya, kesalahan adalah hasil dari perpustakaan pihak ketiga yang saya impor yang menggunakan modul Perpustakaan Dukungan Google yang lebih lama. Saya hanya memperbarui mereka ke versi terbaru (memeriksa pada Github misalnya), dan kesalahan sudah hilang. Saya sarankan memeriksa semua perpustakaan non-Google yang Anda masukkan dalam build.gradle Anda sudah terbaru.

5
Octocat
implementation 'com.Android.support:appcompat-v7:26.1.0'

setelah baris ini Anda harus menambahkan Baris baru di gradle Anda

implementation 'com.Android.support:design:26.1.0'
5
Aleem Momin

Saya baru saja memperbarui Repositori Dukungan Android saya ke (revisi: 44.0.0); Kemudian perangkat Android SDK dan Emulator ke versi terbaru 25.3.1 dari sdk manager> SDK tools Dan itu menyelesaikan masalah saya.

5
Ajit Thapa

Saya mendapat masalah ini setelah memperbarui ke Android Studio 2.3

Menambahkan baris-baris ini dalam dependensi memecahkan masalah saya

compile 'com.Android.support:customtabs:25.2.0'  
compile 'com.Android.support:palette-v7:25.2.0'
4
Kathirva

Jika Anda menghadapi masalah setelah menerapkan semua perpustakaan baru yang disebutkan di bawah ini. Saya menghadapi masalah yang sama yang disebutkan di atas pada versi yang kompatibel 'com.Android.support:appcompat-v7:27.1.0' ini.

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'

Saya hanya mengganti .__ ini 

'com.Android.support:appcompat-v7:27.1.0'

untuk ini

'com.Android.support:appcompat-v7:27.0.1'
3
badarshahzad

termasuk baris berikut:

implementation 'com.Android.support:support-v4:27.1.1'

Pastikan Anda menggunakan plugin Android studio 3+

 enter image description here

3
Shrirang

tambahkan ini di dependensi tingkat aplikasi

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'
3
Mohammad Maaz

Bagi saya, saya mengatasi kesalahan dengan menambahkan: compile 'com.Android.support:design:<version>'

3
Haya Akkad

Cobalah Untuk membuat alat pembuatan versi yang sama persis dengan perpustakaan dukungan

contoh 

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'
}
3
Mohammed Shady

Hal lain yang dapat menyebabkan masalah ini, adalah jika Anda mendapat deklarasi seperti ini:

compile 'com.Android.support:support-v4:25.3.1'
compile 'com.Android.support:appcompat-v7:25.3.1'
compile 'com.Android.support:recyclerview-v7:+'

+ itu berarti mengambil versi terbaru yang mungkin merupakan versi yang lebih baru dari 25.3.1. Ganti + dengan versi spesifik seperti 25.3.1 seperti ini:

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'

dan itu akan menyelesaikan masalah

3
Yonatan Nir

Masalahnya dapat diatasi dengan menggunakan metode berikut:

  1. Buka file AndroidManifest.xml Anda.
  2. Klik pada opsi Manifes Digabungkan di bagian bawah
  3. Di sebelah kanan, ia akan menampilkan File Manifes Lainnya . Berikut adalah file manifes terpisah untuk dependensi berbeda yang Anda sertakan, atau dimasukkan karena pengaruh beberapa dependensi lainnya.
  4. Temukan ketergantungan yang disebutkan dalam pesan kesalahan Anda. Klik untuk membuka file manifesnya.
  5. Jika pesan kesalahan Anda mengatakan untuk mengubah atribut Android:value di meta-data, maka ini adalah tempat untuk melakukan perubahan itu.
  6. Ubah nilai dan tempat-tempat lain di mana nomor versi yang tidak cocok muncul dan ubahlah dengan versi yang Anda masukkan dalam file build.gradle.
  7. Sekarang sinkronkan proyek dan Anda siap melakukannya
3
Devansh Maurya

Sangat Sederhana dengan versi baru Android studio 3.x.

Cukup salin versi yang kurang dari versi saat ini dan tambahkan secara eksplisit dengan nomor versi yang sama dengan versi saat ini. 

Contoh  

Ditemukan versi 27.1.1, 27.1.0. Contoh termasuk com.Android.support:animated-vector-drawable:27.1.1 dan com.Android.support:exifinterface:27.1.0

Cukup salin versi com.Android.support:exifinterface:27.1.0 dan ubah ke com.Android.support:exifinterface:27.1.1 sehingga menjadi sama dengan versi saat ini yang Anda gunakan dan tambahkan ke dependensi gradle Anda sebagai berikut. 

implementation 'com.Android.support:exifinterface:27.1.1'

Catatan: Setelah selesai jangan lupa klik Sinkronkan sekarang di bagian atas editor.  

2
Muhammad

Semua pustaka com.Android.support harus menggunakan spesifikasi versi yang sama persis (pencampuran versi dapat menyebabkan crash runtime). Ditemukan versi 25.1.1, 24.0.0. Contohnya termasuk com.Android.support:animated-vector-drawable:25.1.1 dan com.Android.support:mediarouter-v7:24.0.0

Peringatan ini biasanya terjadi ketika kami menggunakan Layanan Google Play karena menggunakan pustaka dukungan sebagai dependensi.

Sebagian besar dari kita tidak tahu bahwa kita dapat mengganti pustaka dukungan yang digunakan di Google Play Services . Ketika kami menggunakan dependensi berikut:

implementation "com.Android.support:animated-vector-drawable:25.1.1"

secara implisit tergantung pada com.Android.support:mediarouter-v7:25.1.1. Tapi itu berbenturan dengan ketergantungan Layanan Google Play yang com.Android.support:mediarouter-v7:24.0.0. Jadi, kita perlu menimpanya dengan menggunakan perpustakaan secara eksplisit dengan:

implementation "com.Android.support:mediarouter-v7:25.1.1"

Kemudian, blok dependensi Anda akan mencakup keduanya seperti ini:

dependencies {
    implementation "com.Android.support:animated-vector-drawable:25.1.1"
    implementation "com.Android.support:mediarouter-v7:25.1.1"

    ...
}

Saya berhasil mengkompilasi (tidak terlalu bersih) dengan menambahkan

image description here

2
Croid

Saya harus menambahkan baris berikut dalam gradle untuk menghapus kesalahan Ini tergantung pada versi yang Anda gunakan sama dengan appcompat

compile 'com.Android.support:appcompat-v7:26+'

compile 'com.Android.support:mediarouter-v7:26+'
1

Sederhana saja, paksakan semua pustaka v7 dan v4 untuk menggunakan versi pustaka yang telah Anda atur sebelum dependensi Anda.

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

Masalah saya terpecahkan Tambahkan dependencyimplementation 'com.google.firebase:firebase-auth:16.0.4' terbaru berikut

1
Prathamesh More

Setelah menghabiskan sekitar 5 jam, solusi ini bekerja untuk saya ..

Pertama tambahkan baris ini ke tag manifes Anda jika Anda belum:

xmlns:tools="http://schemas.Android.com/tools"

Contoh:

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

Kemudian Tambahkan tag meta ini di dalam aplikasi Anda untuk menimpa Anda membuat versi alat, dalam hal ini misalnya saya memilih versi 25.3.1

<application>
   ...
   ..
    <meta-data
        tools:replace="Android:value"
        Android:name="Android.support.VERSION"
        Android:value="25.3.1" />
</application>
1
akaMahesh

Cukup tambahkan // 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'
0
Ramesh R

Hanya ada satu cara ... dan Anda harus melakukannya secara manual ... Pergi ke build.gradle check tetapkan semua dependensi ke versi yang sama .. Dan itu harus bekerja ..

0
Shubham Soni

Kesalahan ini karena luncuran perpustakaan. Coba Picasso atau perpustakaan gambar lainnya

0
Ashok Chowdary