com.google.android.gms: play-services-measurement-base sedang diminta oleh berbagai perpustakaan lain

173

Saya memperbarui ke gradle 4.0.1 dan mulai menerima kesalahan berikut

Library com.google.android.gms: play-services-measurement-base sedang diminta oleh berbagai perpustakaan lain di [[15.0.4,15.0.4]], tetapi diputuskan menjadi 15.0.2. Nonaktifkan plugin dan periksa pohon dependensi Anda menggunakan ./gradlew: app: dependencies.

Proyek saya tidak menggunakan ketergantungan itu jadi saya mencari secara global untuk itu, dan itu hanya muncul di dalam

build / intermediates / lint-cache / maven.google / com / google / android / gms / group-index.xml

seperti baris ini

<play-services-measurement-base versions="15.0.0,15.0.2"/>

Jadi saya mencoba menghapus folder build saya dan membersihkan proyek, tetapi membuatnya kembali dengan nilai yang sama: / karenanya kesalahan masih tetap ada

Ilja
sumber
Diselesaikan di sini: Saya juga menghadapi masalah yang sama ketika mencoba menambahkan crashlytics di firebase. Silakan update versi terbaru dari dependensi untuk com.google.android.gms: play-jasa dan com.google.firebase: ...... . Ini akan secara otomatis menyelesaikan masalah
Priya Rajan
Saya memiliki versi terbaru dan mendapatkan kesalahan ini sehingga diturunkan ke 15.0.1 dan berhasil!
landrykapela
Silakan buka masalah ini dan beri bintang. Tampaknya ada banyak masalah karena ada banyak perpustakaan yang tidak diterbitkan dari jCenter.
Patricio Sard

Jawaban:

173

Masalah sebenarnya dibahas dalam catatan rilis 23 Mei dari https://developers.google.com/android/guides/releases#may_23_2018

Pada dasarnya, Anda perlu membenturkan semua Play Services dan Firebase libraries ke versi terbaru mereka ( yang mungkin berbeda untuk masing-masing sejak versi 15 ). Anda dapat menggunakan https://mvnrepository.com/ untuk menemukan versi terbaru untuk setiap perpustakaan.

Lihat juga: https://firebase.google.com/support/release-notes/android#20180523

Nico
sumber
5
maven.google.com juga cocok untuk mencari versi yang dirilis dari perpustakaan ini.
PaulR
52
LifeSaver. Google harus merampingkan versi ini. Ini menyakitkan
Dibzmania
1
Jawaban Anda membantu saya memahami hal ini. Tapi saya harus menggunakan posting ini untuk benar-benar mendapatkan versi yang benar termasuk dalam proyek saya dan melewati kesalahan.
Jacob Joel
12
Saya menggunakan versi terbaru dari semua perpustakaan tetapi kesalahan tetap ada.
Siswa
2
Jika Anda memperbarui semua pustaka ke versi terbaru masing-masing, Anda akan mendapat peringatan yang mengatakan "Semua pustaka gms / firebase harus menggunakan spesifikasi versi yang sama persis (pencampuran versi dapat menyebabkan crash runtime)." Apakah ini yang diharapkan? Bagaimana Anda menyelesaikan ini serta masalah aslinya?
user3369427
86

hanya solusi yang berfungsi untuk saya:

letakkan di bagian bawah build.gradle

com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true
htw
sumber
10
Bagi saya solusi ini menyembunyikan pesan, yang kemudian dimunculkan dengan cara lain: "Android dependency 'com.google.android.gms: play-services-measuring-base' memiliki versi berbeda untuk kompilasi (15.0.4) dan runtime ( 16.0.0) classpath. Anda harus secara manual mengatur versi yang sama melalui DependencyResolution "
ARLabs
Ini satu-satunya solusi yang bekerja untuk saya. Bahkan dengan semua perpustakaan gradle yang terbaru.
Neri
Ini berfungsi, tetapi gunakan sebagai pilihan terakhir. Saya menyinkronkan semua versi Google Play dan Firebase, tetapi satu perpustakaan menolak untuk menerima versi itu (hardcoded membutuhkan satu dan hanya satu versi tertentu).
pmont
Ini lelucon Firebase Android SDKs now have independent version numbers, allowing for more frequent, flexible updates.,.
Kimi Chiu
18
ini adalah yang terburuk yang bisa dilakukan; mengabaikan masalah bukanlah "solusi".
Martin Zeitler
31

Pastikan untuk menjaga dependensi layanan Google play Anda dan dependensi Firebase ke versi terbaru.

Juga periksa semua file gradle Anda, tingkat modul dan tingkat proyek, harus ada hanya satu versi umum dari ketergantungan di semua modul. Dapat dipecahkan dengan menyimpan versi-versi tersebut dalam variabel tingkat proyek.

Periksa di sini untuk versi pembaruan layanan Google play

Layanan Google Play Terbaru

Periksa di sini untuk versi terbaru Firebase

Firebase Terbaru

Periksa di sini untuk versi terbaru Firebase untuk Android

Firebase Android Terbaru

abitcode
sumber
ini bermanfaat. Menggunakan react-asli dan harus memperbarui paket yang kami gunakan untuk terbaru di tautan ini.
publicknowledge
Itu bisa terjadi bahkan jika Anda hanya bergantung pada satu lib Google! Lihat jawaban saya untuk alasannya (plugin Android Gradle yang sangat lama).
NateS
13

Saya memperbarui

implementation 'com.google.android.gms:play-services-analytics:16.0.3'

dan itu bekerja untuk saya

Amine M'hamed
sumber
1
Terima kasih. Saya melakukan hal yang sama, itu bekerja dengan sangat baik.
Nguyễn Anh Tuấn
1
di mana saya harus meletakkan baris ini?
Anand_5050
di android / app / build.gradle @ Anand_5050
Swati
9

mengubah saya build.gradlemenjadi yang berikut ini berfungsi untuk saya:

ext {
  googlePlayServicesVersion   = "15.0.1"
}

allprojects {
  repositories {
      mavenLocal()
      maven { url 'http://maven.google.com' }
      jcenter { url "http://jcenter.bintray.com/" }
      google()
      maven {
        // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
        url "$rootDir/../node_modules/react-native/android"
      }

      configurations.all {
        resolutionStrategy {
            force "com.google.android.gms:play-services-basement:$googlePlayServicesVersion"
            force "com.google.android.gms:play-services-tasks:$googlePlayServicesVersion"
        }
      }
  }
}
mk7danny
sumber
terima kasih, ini membantu saya dan menyelesaikan kesalahan saya. atleast memberi saya arahan untuk kesalahan berikutnya yang saya menempatkan mereka dalam resolusi yang
Danish
Untuk memperjelas, itu menambahkan ext {...}blok untuk memaksa versi yang memperbaiki masalah
Aaron
7

Dalam kasus saya, menggunakan versi terbaru untuk dependenciesmenyelesaikan masalah saya:

'com.google.android.gms:play-services-analytics:16.0.1'
'com.google.android.gms:play-services-tagmanager:16.0.1'
Murat
sumber
5

Ini bisa terjadi jika plugin Android Gradle Anda sudah sangat tua, bahkan jika Anda hanya menggunakan satu lib Google! Rupanya semua lib Google dulu harus versi yang sama persis. Sekarang mereka tidak perlu sama, hanya yang terbaru. Ketika menentukan bahkan satu lib, itu menarik dalam dependensi di mana versi tidak cocok dan plugin Android Gradle lama muntah.

Tetapkan versi yang lebih baru seperti:

buildscript {
    dependencies {
        classpath 'com.android.tools.build:gradle:3.3.2'
    }
}

Anda mungkin perlu memperbarui Gradle Anda untuk menggunakan plugin yang lebih baru (ini akan memberitahu Anda).

NateS
sumber
3

Hanya solusi yang berfungsi untuk saya (ditemukan di SOF) (tidak memiliki tautan) adalah:

di build.grale utama utama

allprojects {

subprojects {
    project.configurations.all {
        resolutionStrategy.eachDependency { details ->
            if (details.requested.group == 'com.google.android.gms'
                    && !details.requested.name.contains('multidex')) {
                details.useVersion "x.y.z"
            }
        }
    }
}
issamux
sumber
3
sekarang saya mendapatkan kesalahan yang berbedaThe library com.google.firebase:firebase-analytics is being requested by various other libraries at [[16.0.3,16.0.3]], but resolves to 16.0.1. Disable the plugin and check your dependencies tree using ./gradlew :app:dependencies.
Eric Kim
3

Tambahkan ke daftar dependensi Anda. Sekarang perlu memilikinya untuk pekerjaan yang tepat dari semua dependensi firebase:

implementation 'com.google.firebase:firebase-core:16.0.1'
PavelGP
sumber
3

Saya memiliki masalah yang sama

Pastikan Anda memiliki versi terbaru dari semua dependensi. Saya menggunakan versi saat ini untuk Firebase core dan auth. Versi yang lebih baru memiliki perbaikan bug.

Anda bisa mendapatkan versi terbaru dari sini: https://firebase.google.com/support/release-notes/android

Menggunakan versi terbaru pada titik waktu saat ini:

di app / build.gradle:

dependencies {
implementation 'com.google.firebase:firebase-core:16.0.6'
implementation 'com.google.firebase:firebase-auth:16.1.0'
}
shellym
sumber
3

Masalah serupa muncul dengan saya ketika saya mencoba menambahkan Firebase Database ke proyek saya.

implementation 'com.google.firebase:firebase-core:16.0.1'
implementation 'com.google.firebase:firebase-database:16.0.3'

Masalah ini dapat diatasi dengan menurunkan versi atau memutakhirkan kedua versi ke tingkat yang sama. Jadi saya menurunkan basis data firebase ke

implementation 'com.google.firebase:firebase-core:16.0.1'
implementation 'com.google.firebase:firebase-database:16.0.1'

dan itu berhasil! Semua versi yang tersedia dapat dicari di situs ini: https://mvnrepository.com/

Harshit Agarwall
sumber
1
Bekerja untuk saya setelah mencari banyak artikel. Terjadi kesalahan saat menambahkan basis data firebase. Terima kasih
gauravsngarg
2

Anda dapat menemukan perpustakaan menarik ketergantungan ini menggunakan:

$ ./gradlew app:dependencies
Nico
sumber
3
Ini tidak berfungsi, itu hanya memuntahkan kesalahan yang sama tanpa grafik ketergantungan.
jasonhudgins
3
Anda perlu menghapus plugin yang berlaku: baris 'com.google.gms.google-services' sebelum mencoba ini untuk menghindari menampilkan kesalahan
Kata Lune
1
Saya menonaktifkan plugin, dan memeriksa dependensi. Tapi tidak ada perpustakaan yang memiliki ketergantungan ke 15.0.4 seperti yang dinyatakan dalam pengecualianThe library com.google.android.gms:play-services-measurement-base is being requested by various other libraries at [[15.0.4,15.0.4], [16.0.0,16.0.0]], but resolves to 16.0.0.
miszmaniac
1
@ miszmaniac Saya punya masalah yang sama persis. Turunkan versi keduanya play-services-analyticsdan firebase-coreuntuk 16.0.0menyelesaikan masalah.
NoHarmDan
Sistem versi baru yang tidak setara untuk perpustakaan Firebase ini adalah tragedi untuk saat ini. Kemarin kami mengalami crash acak pada awal aplikasi, karena firebase tidak dapat init () karena beberapa alasan aneh ... kami harus menonaktifkan (dalam manifes) firebase-perf untuk dapat menghapus crash
miszmaniac
2

Saya mengalami kesalahan The library com.google.android.gms:play-services-measurement-base is being requested by various other libraries at [[16.0.2,16.0.2]], but resolves to 16.0.0. Disable the plugin and check your dependencies tree using ./gradlew :app:dependencies.

Menjalankan ./gradlew :app:dependenciesakan mengungkapkan dependensi apa yang membutuhkan dependensi yang salah (yang ada di braket persegi). Bagi saya masalahnya berasal dari firebase-core: 16.0.3 seperti yang ditunjukkan di bawah ini. Saya memperbaikinya dengan menurunkan firebase-core ke 16.0.1

+--- com.google.firebase:firebase-core:16.0.3
|    +--- com.google.firebase:firebase-analytics:16.0.3
|    |    +--- com.google.android.gms:play-services-basement:15.0.1
|    |    |    \--- com.android.support:support-v4:26.1.0 (*)
|    |    +--- com.google.android.gms:play-services-measurement-api:[16.0.1] -> 16.0.1
|    |    |    +--- com.google.android.gms:play-services-ads-identifier:15.0.1
|    |    |    |    \--- com.google.android.gms:play-services-basement:[15.0.1,16.0.0) -> 15.0.1 (*)
|    |    |    +--- com.google.android.gms:play-services-basement:15.0.1 (*)
|    |    |    +--- com.google.android.gms:play-services-measurement-base:[16.0.2] -> 16.0.2
Eric Kim
sumber
2

Bagi saya kesalahan ini muncul setelah mengintegrasikan Crashlytics via Firebase, karena adanya konflik versi antara

implementation 'com.google.firebase:firebase-core:16.0.4'
implementation 'com.google.android.gms:play-services-location:15.0.1'

Saya pertama kali mencoba menurunkan Firebase Core ke 15.0.1, tetapi sepertinya tidak ada versi seperti itu, hanya 15.0.0dan 15.0.2! Sebaliknya saya harus menurunkan versi ke versi 15.0.0, jadi saya berakhir dengan

implementation 'com.google.firebase:firebase-core:15.0.0'
implementation 'com.google.android.gms:play-services-location:15.0.0'

Jadi sekarang ini berfungsi, tetapi saya mendapatkan peringatan Lint yang mengganggu tentang versi yang lebih baru yang tersedia. Bencana versi ini berantakan.

Magnus W
sumber
1

Saya menabrak masalah ini, dan memperhatikan bahwa catatan rilis menyebutkan:

Firebase sekarang mengharuskan file gradle aplikasi untuk secara eksplisit mencantumkan com.google.firebase: firebase-core sebagai ketergantungan untuk layanan Firebase agar berfungsi seperti yang diharapkan.

Membuat firebase-coreketergantungan aplikasi (serta ketergantungan perpustakaan) menyelesaikan masalah ini untuk saya.

Tad
sumber
1

1. Buka build.gradle tingkat proyek

Perbarui com.google.gms:google-servicesversi ke yang terbaru. Lacak rilis terbaru . Pada saat jawaban terbaru adalah 4.1.0.

2. Buka build.gradle tingkat aplikasi

Perbarui ketergantungan di bawah ini jika Anda menggunakan. Perhatikan bahwa firebase memiliki versi individual untuk setiap ketergantungan sekarang.

Gunakan Perpustakaan Firebase terbaru . Pada saat menjawab versi terbaru ada di bawah ini.

Firebase Core                com.google.firebase:firebase-core:16.0.3
Ads                          com.google.firebase:firebase-ads:15.0.1
Analytics                    com.google.firebase:firebase-analytics:16.0.3
App Indexing                 com.google.firebase:firebase-appindexing:16.0.1
Authentication               com.google.firebase:firebase-auth:16.0.3
Cloud Firestore              com.google.firebase:firebase-firestore:17.1.0
Cloud Functions              com.google.firebase:firebase-functions:16.1.0
Cloud Messaging              com.google.firebase:firebase-messaging:17.3.2
Cloud Storage   c            om.google.firebase:firebase-storage:16.0.2
Crash Reporting              com.google.firebase:firebase-crash:16.2.0
Crashlytics                  com.crashlytics.sdk.android:crashlytics:2.9.5
Dynamic Links                com.google.firebase:firebase-dynamic-links:16.1.1
Invites                      com.google.firebase:firebase-invites:16.0.3
In-App Messaging             com.google.firebase:firebase-inappmessaging:17.0.1
In-App Messaging Display     com.google.firebase:firebase-inappmessaging-display:17.0.1
ML Kit: Model Interpreter    com.google.firebase:firebase-ml-model-interpreter:16.2.0
ML Kit: Vision               com.google.firebase:firebase-ml-vision:17.0.0
ML Kit: Image Labeling       com.google.firebase:firebase-ml-vision-image-label-model:15.0.0
Performance Monitoring       com.google.firebase:firebase-perf:16.1.0
Realtime Database            com.google.firebase:firebase-database:16.0.2
Remote Config                com.google.firebase:firebase-config:16.0.0

Sinkronkan dan Bangun ...

Khemraj
sumber
1

Saya perhatikan bahwa log debug menyebutkan firebase-analytics versi lama (16.0.0). Menambahkan secara eksplisit versi terbaru memperbaiki masalah:

implementation "com.google.firebase:firebase-analytics:16.0.3"
smok
sumber
1

Perbarui semua dependensi Anda ke versi terbaru dan itu akan memperbaiki masalah.

Tidak perlu menambahkan
com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true

Ini akan menyebabkan crash jika Anda menggunakan versi campuran.

RakeshGupta
sumber
1

Saya kira kesalahan berikut ini disebabkan karena berbagai versi dependensi firebase. Bagi saya mengubah versi semua dependensi yang saya terapkan pada proyek saya ke 16.0.1, bekerja seperti pesona.

Bagi saya kesalahan itu dibuat oleh baris: com.google.firebase:firebase-auth:16.0.2

Dan saya mengubahnya menjadi: com.google.firebase:firebase-auth:16.0.1

Dan itu berhasil .. Semoga ini bisa membantu.

Vipin George
sumber
1

Dalam kasus saya, ini memecahkan masalah:

implementation 'com.google.android.gms:play-services-analytics:16.0.1'
Kishore Reddy
sumber
1

Dalam kasus saya, saya telah mengganti file build.gradle saya dengan baris ini

implementation 'com.google.firebase:firebase-core:16.0.8'

dengan

implementation 'com.google.firebase:firebase-core:15.0.0' 

dan menambahkan baris ini

implementation 'com.google.android.gms:play-services-location:15.0.0'

Sekarang tidak apa-apa

Maddu Swaroop
sumber
1

Saya memiliki masalah serupa yang diselesaikan oleh:

  1. Pada tingkat tingkat aplikasi: Perbarui semua dependensi firebase ke versi terbaru terbaru
  2. Pada tingkat proyek tingkat: perbarui ketergantungan ke yang terbaru:, gms.google-servicesDalam kasus saya ini adalah: 'com.google.gms: google-services: 4.2.0'
tabebqena
sumber
disinilah letak keajaibannya. Semua dependensi di app / build.gradle dan kemudian file build.gradle teratas memperbarui semua dependensi
leeCoder
1

Saya mengubah dependensi berikut dalam proyek saya untuk membuatnya bekerja.

build.gradle (aplikasi):

implementation 'com.google.firebase:firebase-core:16.0.1'

untuk

implementation 'com.google.firebase:firebase-core:16.0.8'

build.gradle (aplikasi):

classpath 'com.google.gms:google-services:4.0.1'

untuk

classpath 'com.google.gms:google-services:4.2.0'

**** Catatan :

Gunakan tautan berikut untuk penggunaan terbaru perpustakaan yang memiliki dependensi https://firebase.google.com/docs/android/setup

Muhammad Ali
sumber
1

Gunakan versi Firebase yang diperbarui dan hindari tambahan. Ini sudah cukup (tetapi jika Anda perlu menggunakan ruang penyimpanan atau .. Anda harus menambahkannya juga)

//FIREBASE
implementation 'com.google.firebase:firebase-core:17.2.0'
 implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1'
//ADMob
implementation 'com.google.android.gms:play-services-ads:18.2.0'
//PUSH NOTIFICATION
implementation 'com.google.firebase:firebase-messaging:20.0.0'
implementation 'com.google.firebase:firebase-core:17.2.0'

dan perbarui layanan google:

 classpath 'com.google.gms:google-services:4.3.2'
sana ebadi
sumber
Terima kasih, menggunakan versi ini menyelesaikan masalah saya.
SriTeja Chilakamarri
0

Jika pesannya adalah:

Library com.google.android.gms: play-services-measurement-base sedang diminta oleh berbagai perpustakaan lain di [[15.0.4,15.0.4]], tetapi diputuskan menjadi 15.0.2 . Nonaktifkan plugin dan periksa pohon dependensi Anda menggunakan ./gradlew: app: dependencies.

Mengubah versi dari semua pustaka layanan play yang Anda gunakan ke yang Anda butuhkan ( 15.0.2 dalam hal ini) dapat menyelesaikan masalah.

Dalam kasus saya, saya telah mengubah:

implementation 'com.google.android.gms:play-services-base:+' -> implementation 'com.google.android.gms:play-services-base:15.0.2'
implementation 'com.google.android.gms:play-services-location:+' -> implementation 'com.google.android.gms:play-services-location:15.0.2'
implementation 'com.google.android.gms:play-services-maps:+' -> implementation 'com.google.android.gms:play-services-maps:15.0.2'
implementation 'com.google.android.gms:play-services-auth:+' -> implementation 'com.google.android.gms:play-services-auth:15.0.2'
implementation 'com.google.android.gms:play-services-places:+' -> implementation 'com.google.android.gms:play-services-places:15.0.2'
Jose Q
sumber
0

Diselesaikan di sini: Saya juga menghadapi masalah yang sama ketika mencoba menambahkan crashlytics di firebase. Silakan update versi terbaru dari dependensi untuk com.google.android.gms: play-jasa dan com.google.firebase: ...... . Ini akan secara otomatis menyelesaikan masalah

Priya Rajan
sumber
0

Saya mempunyai masalah yang sama ketika saya mencoba untuk menambahkan implementasi basis data firebase, jika saya berkomentar bahwa garis itu berfungsi, jadi setelah beberapa kali mencoba saya pergi ke https://firebase.google.com/docs/android/setup

Di sana saya memeriksa versi pustaka yang tersedia dan firebase-core saya ada di 16.0.1 (versi saat ini 16.0.4) jadi saya mengubahnya secara manual dan bekerja dengan baik, membangun dan menyinkronkan berhasil.

Anibal
sumber
0

Dalam kasus saya, saya cukup menghapus

implementation "com.google.android.gms:play-services-ads:16.0.0

dan menambahkan dependensi iklan firebase

implementation 'com.google.firebase:firebase-ads:17.1.2'
code4rox
sumber
0

Punya masalah yang sama. Anda harus menghapus titik dua: setelah versi di gradle (itu bug).

Pengaturan ini bekerja untuk saya:

implementation 'com.google.firebase:firebase-firestore:17.1.5'

Juga atur multiDexEnabled menjadi true di gradle (jika Anda mendapatkan kesalahan DexOverflowException):

    android {
        compileSdkVersion 27
..
            multiDexEnabled true
        }
cinta hidup
sumber