android - google 和 maven 存储库之间的 play-services-measurement-base 版本不匹配

标签 android gradle google-play-services bintray jcenter

我正在尝试构建一个我们同时使用 Google Analytics 和 Firebase 的 android react native 应用程序,我在编译时遇到了这个问题:
The library com.google.android.gms:play-services-measurement-base is being requested by various other libraries at [[16.0.0,16.0.0]], but resolves to 16.0.2. Disable the plugin and check your dependencies tree using ./gradlew :app:dependencies.
在分析我们的 gradle 扫描后(见下图),我们发现我们有一个模块需要 com.google.firebase:firebase-core另一个需要 com.google.android.gms:play-services-analytics .





这两个模块都需要 play-services-measurement-base但由于这些模块是在不同的存储库中下载的(一个是 google,另一个是 maven)。我们注意到版本 16.0.2 仅在 google 存储库上发布,而不是在 maven 上发布(查看下面的图片)。

https://mvnrepository.com/artifact/com.google.android.gms/play-services-measurement-base

https://dl.google.com/dl/android/maven2/index.html

我们试图禁用依赖项检查,但没有成功。如果有人对此问题有解决方案或可以就此问题联系 google/maven。

  • 版本:
  • 梯度:4.4
  • Gradle Android 工具:3.1.3
  • Gradle Google 服务插件:4.0.1
  • Android SDK 版本:27
  • 构建脚本存储库:google(), jcenter()

  • 临时解决方案:明确排除 play-services-measurement-base像这样来自 Firebase: implementation("com.google.firebase:firebase-core:16.0.1") { exclude group: 'com.google.android.gms', module: 'play-services-measurement-base' } 或检查接受的答案。

    最佳答案

    您可以将分辨率强制为特定版本号:

    configurations.all() {
        resolutionStrategy.force "com.google.android.gms:play-services-measurement-base:16.0.2"
    }
    

    exclude版本 16.0.0来自冲突模块 com.google.firebase:firebase-core .

    关于android - google 和 maven 存储库之间的 play-services-measurement-base 版本不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52004016/

    相关文章:

    c# - Xamarin - 在没有硬件加速支持的笔记本电脑上部署

    java - 更新 Android 应用中的原始资源

    java - 使用 ActionBar 选项卡进行导航时菜单折叠

    Android:ExternalSystemException:字符串索引超出范围:-130 构建版本

    android - 当 Google Play 服务无法获取位置修复时,我如何收到通知?

    android - 如何轻松更改 Android 中进度条的颜色?

    kotlin - Androidx Proto 数据存储 gradle 设置

    android - Azure DevOps 管道 android build设置 sdk 位置

    android - 如何防止在使用 Google Play 服务的多人在线 Android/iOS 游戏中作弊?

    使用 Auth.GOOGLE_SIGN_IN_API 时的 java.lang.IllegalStateException : Must not set scopes in GoogleApiClient. Builder