com.google.android.gms: play-services-đo-cơ sở đang được yêu cầu bởi nhiều thư viện khác


173

Tôi đã cập nhật lên lớp 4.0.1 và bắt đầu nhận lỗi sau

Thư viện com.google.android.gms: play-services-đo lường cơ sở đang được yêu cầu bởi nhiều thư viện khác tại [[15.0.4,15.0.4]], nhưng giải quyết thành 15.0.2. Vô hiệu hóa plugin và kiểm tra cây phụ thuộc của bạn bằng cách sử dụng ./gradlew: app: phụ thuộc.

Dự án của tôi không sử dụng sự phụ thuộc đó nên tôi đã tìm kiếm nó trên toàn cầu và nó chỉ xuất hiện bên trong

xây dựng / trung gian / lint-cache / maven.google / com / google / android / gms / group-index.xml

như dòng này

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

Vì vậy, tôi đã cố gắng xóa thư mục xây dựng của mình và làm sạch dự án, nhưng nó sẽ tạo lại nó với cùng các giá trị: / do đó lỗi vẫn còn


Đã giải quyết ở đây: Tôi cũng gặp phải vấn đề tương tự khi cố gắng thêm crashlytics trong firebase. Vui lòng cập nhật phiên bản mới nhất của phụ thuộc cho com.google.android.gms: play-dịch vụcom.google.firebase: ...... . Nó sẽ tự động giải quyết các vấn đề
Priya Rajan

Tôi đã có phiên bản mới nhất và gặp lỗi này vì vậy đã hạ cấp xuống 15.0.1 và nó đã hoạt động!
Landrykapela

Hãy đi đến vấn đề này và đánh dấu sao. Có vẻ như có rất nhiều vấn đề bởi vì có rất nhiều thư viện chưa được công bố từ jCenter.
Patricio Sard

Câu trả lời:


173

Vấn đề thực tế được thảo luận trong ghi chú phát hành ngày 23 tháng 5 của https://developers.google.com/android/guides/release#may_23_2018

Về cơ bản, bạn cần chuyển tất cả các thư viện Play ServicesFirebase sang phiên bản mới nhất của chúng ( có thể khác nhau cho mỗi phiên bản kể từ phiên bản 15 ). Bạn có thể sử dụng https://mvnreposective.com/ để tìm phiên bản mới nhất cho mỗi thư viện.

Xem thêm: https://firebase.google.com/support/release-notes/android#20180523


5
maven.google.com cũng phù hợp để tra cứu các phiên bản đã phát hành của các thư viện này.
PaulR

52
Bảo vệ cuộc sống. Google nên hợp lý hóa phiên bản này. Đó là một nỗi đau
Dibzmania

1
Câu trả lời của bạn đã giúp tôi tìm ra điều này. Nhưng tôi đã phải sử dụng bài đăng này để thực sự có được các phiên bản chính xác có trong dự án của mình và vượt qua các lỗi.
Jacob Joel

12
Tôi đã sử dụng phiên bản mới nhất của tất cả các thư viện nhưng lỗi vẫn còn.
Học sinh

2
Nếu bạn cập nhật tất cả các thư viện lên các phiên bản tương ứng mới nhất của chúng, bạn sẽ nhận được cảnh báo rằng "Tất cả các thư viện gms / firebase phải sử dụng chính xác phiên bản chính xác (các phiên bản trộn có thể dẫn đến sự cố thời gian chạy)." Đây có phải là mong đợi? Làm thế nào để bạn giải quyết vấn đề này cũng như các vấn đề ban đầu?
dùng3369427

86

giải pháp làm việc duy nhất cho tôi:

đặt nó ở dưới cùng của build.gradle

com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true

10
Đối với tôi, giải pháp này ẩn thông báo, sau đó được nêu ra theo một cách khác: "Sự phụ thuộc của Android 'com.google.android.gms: play-services-tests-base' có phiên bản khác cho trình biên dịch (15.0.4) và thời gian chạy ( 16.0.0) classpath. Bạn nên đặt thủ công cùng một phiên bản thông qua DependencyResolution "
ARLabs

Đó là giải pháp duy nhất hiệu quả với tôi. Ngay cả với tất cả các thư viện gradle đến nay.
Neri

Nó hoạt động, nhưng sử dụng nó như là một phương sách cuối cùng. Tôi đồng bộ hóa tất cả các phiên bản Google Play và Firebase, nhưng một thư viện đã từ chối chấp nhận phiên bản đó (nó đã được mã hóa cứng để yêu cầu một và chỉ một phiên bản cụ thể).
pmont

Đây là một trò đùa , Firebase Android SDKs now have independent version numbers, allowing for more frequent, flexible updates..
Kimi Chiu

18
đây là điều tồi tệ nhất có thể làm; bỏ qua vấn đề không phải là một "giải pháp".
Martin Zeitler

31

Đảm bảo giữ các phụ thuộc dịch vụ Google chơi và phụ thuộc Firebase của bạn vào phiên bản mới nhất.

Ngoài ra, hãy kiểm tra tất cả các tệp lớp, cấp độ mô-đun và cấp độ dự án, chỉ có một phiên bản phụ thuộc chung trên tất cả các mô-đun. Có thể được giải quyết bằng cách giữ các phiên bản đó trong biến cấp độ dự án.

Kiểm tra phiên bản cập nhật dịch vụ Google play tại đây

Dịch vụ Google Play mới nhất

Kiểm tra phiên bản cập nhật Firebase tại đây

Firebase mới nhất

Kiểm tra phiên bản cập nhật Firebase cho Android

Firebase Android mới nhất


Điều này rất hữu ích. Sử dụng Reac -igen và phải cập nhật các gói chúng tôi đang sử dụng mới nhất trong các liên kết này.
publicknowledge

Nó có thể xảy ra ngay cả khi bạn chỉ phụ thuộc vào một lib Google duy nhất! Xem câu trả lời của tôi để biết lý do tại sao (plugin Android Gradle rất cũ).
NateS

13

Tôi đã cập nhật

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

và nó làm việc cho tôi


1
Cảm ơn bạn. Tôi đã làm điều tương tự, nó hoạt động rất tốt.
Nguyễn Anh Tuấn

1
Tôi cần đặt dòng này ở đâu?
Anand_5050

trong android / app / build.gradle @ Anand_5050
Swati

9

thay đổi của tôi build.gradleđể sau đây làm việc cho tôi:

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

cảm ơn bạn, nó rất hữu ích cho tôi và giải quyết lỗi của tôi ít nhất đã cho tôi hướng cho các lỗi tiếp theo mà tôi đặt chúng ở cùng độ phân giải
Tiếng Đan Mạch

Để làm rõ, việc thêm ext {...}khối để buộc phiên bản khắc phục sự cố
Aaron

7

Trong trường hợp của tôi, sử dụng các phiên bản mới nhất sau đây đã dependenciesgiải quyết vấn đề của tôi:

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

5

Điều này có thể xảy ra nếu plugin Android Gradle của bạn rất cũ, ngay cả khi bạn chỉ sử dụng một lib Google duy nhất! Rõ ràng tất cả các lib của Google từng là cùng một phiên bản. Bây giờ họ không cần phải giống nhau, chỉ mới nhất. Khi chỉ định một lib duy nhất, nó sẽ kéo theo các phụ thuộc trong đó các phiên bản không khớp và các plugin Android Gradle cũ.

Đặt phiên bản mới hơn như:

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

Bạn có thể cần cập nhật Gradle của mình để sử dụng plugin mới hơn (nó sẽ cho bạn biết).


3

Chỉ có giải pháp phù hợp với tôi (tìm thấy một số nơi trong SOF) (không có liên kết) là:

trong bản dựng chính hàng đầu

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

3
bây giờ tôi đang nhận được lỗi khác nhauThe 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

Thêm vào danh sách các phụ thuộc của bạn. Bây giờ cần phải có nó cho công việc thích hợp của tất cả các phụ thuộc căn cứ hỏa lực:

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

3

Tôi gặp vấn đề tương tự

Chỉ cần chắc chắn rằng bạn có các phiên bản mới nhất của tất cả các phụ thuộc. Tôi đã sử dụng các phiên bản hiện tại cho lõi Firebase và auth. Các phiên bản mới hơn có sửa lỗi.

Bạn có thể nhận các phiên bản mới nhất từ ​​đây: https://firebase.google.com/support/release-notes/android

Sử dụng phiên bản mới nhất tại thời điểm hiện tại:

trong ứng dụng / build.gradle:

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

3

Một vấn đề tương tự đã xảy ra với tôi khi tôi cố gắng thêm Cơ sở dữ liệu Firebase vào dự án của mình.

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

Vấn đề có thể được giải quyết bằng cách hạ cấp hoặc nâng cấp cả hai phiên bản lên mức tương tự. Vì vậy, tôi đã hạ cấp cơ sở dữ liệu căn cứ hỏa lực xuống

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

va no đa hoạt động! Tất cả các phiên bản có sẵn có thể được tìm kiếm trên trang web này: https://mvnreposective.com/


1
Làm việc cho tôi sau khi tìm kiếm rất nhiều bài viết. Đã xảy ra lỗi trong khi thêm cơ sở dữ liệu firebase. Cảm ơn bạn
gauravsngarg

2

Bạn có thể tìm thấy thư viện kéo phụ thuộc này bằng cách sử dụng:

$ ./gradlew app:dependencies

3
Điều này không hoạt động, nó chỉ phát sinh lỗi tương tự mà không có biểu đồ phụ thuộc.
jasonhudgins

3
bạn cần xóa plugin áp dụng: dòng 'com.google.gms.google-services' trước khi thử điều này để tránh hiển thị lỗi
Kata Lune

1
Tôi đã tắt plugin và kiểm tra các phụ thuộc. Nhưng không có thư viện nào phụ thuộc vào 15.0.4 như đã nêu trong trường hợp ngoại lệThe 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 Tôi có cùng một vấn đề. Hạ cấp cả hai play-services-analyticsfirebase-coređể 16.0.0giải quyết vấn đề.
NoHarmDan

Hệ thống mới này của các phiên bản không bằng nhau cho thư viện Firebase hiện đang là thảm kịch. Hôm qua chúng tôi đã gặp sự cố ngẫu nhiên khi bắt đầu ứng dụng, vì căn cứ hỏa lực không thể khởi tạo () vì một số lý do kỳ lạ ... chúng tôi phải vô hiệu hóa (trong bản kê khai) firebase-perf để có thể xóa sự cố
miszmaniac

2

Tôi đã có một lỗi 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.

Chạy ./gradlew :app:dependenciessẽ tiết lộ những gì phụ thuộc đang yêu cầu phụ thuộc sai (những cái trong khung vuông). Đối với tôi, vấn đề đã đến từ firebase-core: 16.0.3 như hình dưới đây. Tôi đã sửa nó bằng cách hạ cấp lõi lửa xuống 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

2

Đối với tôi, lỗi này xuất hiện sau khi tích hợp Crashlytics qua Firebase, do xung đột giữa các phiên bản giữa

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

Lần đầu tiên tôi thử hạ cấp Firebase Core xuống 15.0.1, nhưng có vẻ như không có phiên bản nào như vậy, chỉ 15.0.015.0.2! Thay vào đó tôi phải hạ cả hai xuống phiên bản 15.0.0, vì vậy tôi đã kết thúc với

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

Vì vậy, bây giờ nó đang hoạt động, nhưng tôi nhận được những cảnh báo Lint gây phiền nhiễu về các phiên bản mới hơn có sẵn. Sự thất bại phiên bản này là một mớ hỗn độn.


1

Tôi đã va vào vấn đề này và nhận thấy rằng các ghi chú phát hành đã đề cập:

Firebase hiện yêu cầu tệp phân loại ứng dụng liệt kê rõ ràng com.google.firebase: firebase-core làm phụ thuộc cho các dịch vụ Firebase hoạt động như mong đợi.

Làm cho firebase-coremột phụ thuộc ứng dụng (cũng như phụ thuộc thư viện) đã giải quyết vấn đề này cho tôi.


1

1. Mở cấp dự án build.gradle

Cập nhật com.google.gms:google-servicesphiên bản mới nhất. Theo dõi phát hành mới nhất . Tại thời điểm trả lời mới nhất là 4.1.0.

2. Mở cấp độ xây dựng ứng dụng.gradle

Cập nhật phụ thuộc dưới đây nếu bạn sử dụng bất kỳ. Lưu ý rằng firebase có các phiên bản riêng cho mọi phụ thuộc ngay bây giờ.

Sử dụng Thư viện Firebase mới nhất . Tại thời điểm trả lời phiên bản mới nhất là dưới đây.

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

Đồng bộ hóa và xây dựng ...


1

Tôi nhận thấy rằng các bản ghi gỡ lỗi đề cập đến phiên bản cũ của phân tích firebase (16.0.0). Thêm rõ ràng phiên bản mới nhất đã khắc phục sự cố:

implementation "com.google.firebase:firebase-analytics:16.0.3"

1

Cập nhật tất cả các phụ thuộc của bạn lên phiên bản mới nhất và nó sẽ khắc phục vấn đề.

Không cần thêm
com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true

Nó sẽ dẫn đến sự cố nếu bạn sử dụng các phiên bản hỗn hợp.


1

Tôi đoán lỗi sau đây là do các phiên bản phụ thuộc của căn cứ hỏa lực khác nhau. Đối với tôi, việc thay đổi phiên bản của tất cả các phụ thuộc mà tôi đang triển khai trong dự án của mình thành 16.0.1, hoạt động như một cơ duyên.

Đối với tôi, lỗi được tạo bởi dòng: com.google.firebase:firebase-auth:16.0.2

Và tôi đã đổi nó thành: com.google.firebase:firebase-auth:16.0.1

Và nó đã làm việc .. Hy vọng điều này sẽ giúp.


1

Trong trường hợp của tôi, điều này giải quyết vấn đề:

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

1

Trong trường hợp của tôi, tôi đã thay thế tệp build.gradle của mình dòng này

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

với

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

và thêm dòng này

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

Bây giờ nó ổn


1

Tôi có vấn đề tương tự được giải quyết bằng:

  1. Trong cấp độ ứng dụng: Cập nhật tất cả các phụ thuộc của căn cứ hỏa lực lên phiên bản mới nhất mới nhất
  2. Trong cấp độ dự án: cập nhật sự phụ thuộc mới nhất : gms.google-services, Trong trường hợp của tôi, đó là: 'com.google.gms: google-services: 4.2.0'

đây là nơi phép màu nằm. Tất cả các phụ thuộc trong ứng dụng / build.gradle và sau đó là tệp build.gradle cao nhất cập nhật tất cả các phụ thuộc
leeCoder

1

Tôi đã thay đổi các phụ thuộc sau trong dự án của mình để làm cho nó hoạt động.

build.gradle (ứng dụng):

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

đến

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

build.gradle (ứng dụng):

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

đến

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

**** Lưu ý :

Sử dụng liên kết sau để sử dụng cập nhật các thư viện có phụ thuộc https://firebase.google.com/docs/android/setup


1

Sử dụng phiên bản cập nhật của Firebase và tránh các tính năng bổ sung. Điều này là đủ (nhưng nếu bạn cần sử dụng không gian lưu trữ hoặc .. bạn cũng nên thêm chúng)

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

và cập nhật các dịch vụ google:

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

Cảm ơn bạn, sử dụng các phiên bản này đã giải quyết vấn đề của tôi.
SriTeja Chilakamarri


0

Nếu tin nhắn là:

Thư viện com.google.android.gms: play-services-đo lường cơ sở đang được yêu cầu bởi nhiều thư viện khác tại [[15.0.4,15.0.4]], nhưng giải quyết thành 15.0.2 . Vô hiệu hóa plugin và kiểm tra cây phụ thuộc của bạn bằng cách sử dụng ./gradlew: app: phụ thuộc.

Thay đổi phiên bản của tất cả các thư viện dịch vụ chơi mà bạn đang sử dụng thành thư viện bạn cần ( 15.0.2 trong trường hợp này) có thể giải quyết vấn đề.

Trong trường hợp của tôi, tôi đã thay đổi:

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'

0

Đã giải quyết ở đây: Tôi cũng gặp phải vấn đề tương tự khi cố gắng thêm crashlytics trong firebase. Vui lòng cập nhật phiên bản mới nhất của phụ thuộc cho com.google.android.gms: play-dịch vụcom.google.firebase: ...... . Nó sẽ tự động giải quyết các vấn đề


0

Tôi đã gặp vấn đề tương tự khi tôi cố gắng thêm triển khai cơ sở dữ liệu firebase, nếu tôi nhận xét dòng đó hoạt động, vì vậy sau một vài lần thử, tôi đã truy cập https://firebase.google.com/docs/android/setup

Ở đó tôi đã kiểm tra các phiên bản của các thư viện có sẵn và lõi firebase của tôi là 16.0.1 (phiên bản hiện tại là 16.0.4) vì vậy tôi đã thay đổi thủ công và nó hoạt động tốt, quá trình xây dựng và đồng bộ hóa đã thành công.


0

Trong trường hợp của tôi, tôi chỉ cần loại bỏ

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

và thêm phụ thuộc vào quảng cáo firebase

implementation 'com.google.firebase:firebase-ads:17.1.2'

0

Có cùng một vấn đề. Bạn phải xóa dấu hai chấm: sau phiên bản trong lớp (đó là một lỗi).

Các cài đặt này hoạt động với tôi:

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

Đồng thời đặt multiDexEnables thành true trong lớp (nếu bạn gặp lỗi DexOverflowException):

    android {
        compileSdkVersion 27
..
            multiDexEnabled true
        }
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.