com.google.android.gms:play-services-measurement-base 正在被其他各种库请求
Posted
技术标签:
【中文标题】com.google.android.gms:play-services-measurement-base 正在被其他各种库请求【英文标题】:com.google.android.gms:play-services-measurement-base is being requested by various other libraries 【发布时间】:2018-11-07 16:48:57 【问题描述】:我更新到 gradle 4.0.1 并开始收到以下错误
库 com.google.android.gms:play-services-measurement-base 是 [[15.0.4,15.0.4]] 的各种其他图书馆正在请求,但是 解析为 15.0.2。禁用插件并检查您的依赖项 使用 ./gradlew :app:dependencies 的树。
我的项目没有使用该依赖项,所以我在全球范围内搜索它,它只出现在内部
build/intermediates/lint-cache/maven.google/com/google/android/gms/group-index.xml
这条线
<play-services-measurement-base versions="15.0.0,15.0.2"/>
所以我尝试删除我的构建文件夹并清理项目,但它使用相同的值重新生成它:/因此错误仍然存在
【问题讨论】:
在这里解决: 我在尝试在 firebase 中添加 crashlytics 时也遇到了同样的问题。请为 com.google.android.gms:play-services 和 com.google.firebase: ...... 更新最新版本的依赖项。它会自动解决问题 我有最新版本,但出现此错误,因此降级到 15.0.1 并且它有效! 请转至this issue 并加注星标。似乎有很多问题,因为有很多库未从 jCenter 发布。 【参考方案1】:只需输入以下代码:
implementation 'com.google.firebase:firebase-core:16.0.6'
implementation 'com.google.firebase:firebase-database:16.0.6'
并重建。它对我来说很好用
【讨论】:
【参考方案2】:firebase-core & firebase-database ... 应该是相同的版本:
实施 'com.google.firebase:firebase-core:16.0.1' 实施 'com.google.firebase:firebase-database:16.0.1'
【讨论】:
【参考方案3】:我有同样的问题,然后我解决了偶然的实现 'com.google.firebase:firebase-auth:15+' 而不是实现 'com.google.firebase:firebase-auth:16.1.0'
【讨论】:
【参考方案4】:这是一个简单的解决方案。 问题是因为您对一个库使用最新版本,而对另一个库使用较低版本。尝试平衡它。最好的解决方案是为所有库使用最新版本。 要解决您的问题,只需单击here 并查看最新版本的库并将其包含在您的项目中,然后进行同步。 就我而言,以下内容对我有用:
dependencies
implementation 'com.google.firebase:firebase-core:16.0.7'
implementation 'com.google.firebase:firebase-database:16.1.0'
apply plugin: 'com.google.gms.google-services'
【讨论】:
【参考方案5】:用版本号替换“+”,它将选择最新版本。 像这样:
implementation 'com.google.firebase:firebase-analytics:+'
【讨论】:
永远不要那样做。这是一个非常糟糕的答案,它可能导致您现在永远不会发生的多次崩溃和更改。因为这总是会请求新版本的库。 只是说使用最新版本应该没有问题。但它可能会。这整个问题来自尝试使用最新版本。【参考方案6】:这可以通过使用最新的依赖集来解决。
你可以在下面的网站上找到最新的
https://firebase.google.com/support/release-notes/android#20180523
再次发布该同步,它应该可以正常工作
【讨论】:
【参考方案7】:当我尝试对所有内容使用相同的版本时,我遇到了类似的错误:
implementation 'com.google.android.gms:play-services-base:16.0.0'
implementation 'com.google.android.gms:play-services-analytics:16.0.0'
implementation 'com.google.android.gms:play-services-awareness:16.0.0'
implementation 'com.google.android.gms:play-services-cast:16.0.0'
implementation 'com.google.android.gms:play-services-gcm:16.0.0'
implementation 'com.google.android.gms:play-services-location:16.0.0'
implementation 'com.google.firebase:firebase-messaging:16.0.0'
当我执行以下操作时,问题已解决:
1) 使用每个服务的最新版本:
implementation 'com.google.android.gms:play-services-base:16.1.0'
implementation 'com.google.android.gms:play-services-analytics:16.0.8'
implementation 'com.google.android.gms:play-services-awareness:16.0.0'
implementation 'com.google.android.gms:play-services-cast:16.2.0'
implementation 'com.google.android.gms:play-services-gcm:16.1.0'
implementation 'com.google.android.gms:play-services-location:16.0.0'
implementation 'com.google.firebase:firebase-messaging:17.6.0'
2) 将 Android Studio 升级到今天可用的最新版本 (Android Studio 3.4)。
3) 将 Android Gradle 插件版本升级到 3.4.0,将 Gradle 版本升级到 5.1.1。
【讨论】:
【参考方案8】:我遇到了同样的错误,但我的情况不同,我同时使用了 Audience Network 和 Firebase。
我收到了这个错误
Android 依赖项 'com.google.android.gms:play-services-basement' 的编译 (11.0.4) 和运行时 (16.0.1) 类路径的版本不同。您应该通过 DependencyResolution 手动设置相同的版本
如果您使用的是audience-network
,这里是解决方案
implementation ("com.facebook.android:audience-network-sdk:$rootProject.fb_version")
exclude group: 'com.google.android.gms'
【讨论】:
【参考方案9】:我已经使用了所有最新的依赖项。原来我错过了AndroidManifest
的权限。添加此权限修复了错误:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
如他们的文档中所述: https://developers.google.com/android/guides/permissions
【讨论】:
【参考方案10】:原因
当您的一个或多个 firebase 或 google play 服务库是旧版本时,会发生此错误。
解决方案
只需更新所有库到最新版本。
如果您必须使用旧版本(例如出于制裁或其他原因),请按照以下说明操作:
将googleServices.disableVersionCheck = true
添加到 app/build.Gradle 文件的末尾
运行项目并找到重复库或存在依赖问题的库
添加它们以排除旧库。
示例
// remote config uses the old version
implementation('com.google.firebase:firebase-config:16.1.3')
exclude group: 'com.google.firebase', module: 'firebase-analytics'
exclude group: 'com.google.firebase', module: 'firebase-analytics-impl'
exclude group: 'com.google.android.gms', module: 'play-services-measurement'
exclude group: 'com.google.android.gms', module: 'play-services-measurement-impl'
implementation 'com.google.firebase:firebase-analytics:17.4.0'
implementation 'com.google.firebase:firebase-messaging:20.1.6'
implementation 'com.google.firebase:firebase-crashlytics:17.0.0'
【讨论】:
以上是关于com.google.android.gms:play-services-measurement-base 正在被其他各种库请求的主要内容,如果未能解决你的问题,请参考以下文章