库 com.google.firebase:firebase-iid 被 [[17.0.0,17.0.0]] 上的各种其他库请求,但解析为 16.2.0

The library com.google.firebase:firebase-iid is being requested by various other libraries at [[17.0.0,17.0.0]], but resolves to 16.2.0

我今天开始出现这个错误,昨天一切正常,gradle 或 firebase 版本

没有任何变化

The library com.google.firebase:firebase-iid is being requested by various other libraries at [[17.0.0,17.0.0]], but resolves to 16.2.0. Disable the plugin and check your dependencies tree using ./gradlew :app:dependencies.

I saw that yesterday was update in google-services plugin,可能是问题所在。

如何解决这个问题?

我遇到了同样的问题。一个快速的解决方法是禁用导致此问题的严格版本检查。添加

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

在您的应用 build.gradle 文件的最底部。

我今天遇到了同样的错误。我正在使用 react-native-firebasereact-native-push-notification。 运行 ./gradlew :app:dependencies 我看到 react-native-push-notification 需要最新版本的 com.google.firebase:firebase-messaging,而后者又需要 com.google.firebase:firebase-iid:[17.0.0],导致错误。

我手动为 react-native-push-notification 指定了早期版本的 firebase-messaging,如 here 所述。这解决了我的问题:

// in android/build.gradle

ext {
    firebaseVersion = '17.1.0' // add this line
    // ...
}

如果你有这个问题,你可能会看到很多帖子说你可以禁用这个检查。我不喜欢这样做,因为它隐藏了问题。

过了一会儿我终于明白是说某个图书馆要我没有的版本。所以我在 build/app/build.gradle 中添加了它并构建了

implementation "com.google.firebase:firebase-iid:17.0.2"

只需使用它所说的解析到的版本,在您的情况下是 16.2.0。

我遇到了同样的问题。我通过将 firebase 消息传递更新到最新版本(此时)解决了这个问题。

implementation 'com.google.firebase:firebase-messaging:17.0.0'

implementation 'com.google.firebase:firebase-messaging:17.3.4'

已解决(无副作用)

对我来说,禁用版本检查并没有解决问题。我所做的是从 firebase 消息传递库中排除 firebase-iid 模块并单独添加它

implementation ("com.google.firebase:firebase-messaging:17.3.4"){
        exclude group: 'com.google.firebase', module: 'firebase-iid'
    }

implementation 'com.google.firebase:firebase-iid:17.0.3'

我在'com.google.firebase:firebase-iid using these firebase dependencies:

中遇到了类似的错误
  1. 实施'com.google.firebase:firebase-core:16.0.7'
  2. 实施'com.google.firebase:firebase-messaging:17.3.4'
  3. 实施'com.google.firebase:firebase-database:16.0.6'
  4. 实施'com.crashlytics.sdk.android:crashlytics:2.9.6'
  5. 实施'com.google.firebase:firebase-functions:16.1.3'

添加后

  • 实施'com.google.firebase:firebase-analytics:16.3.0'

它消失了。

对我来说是 node_modules/@aws-amplify/pushnotification 中的 build.gradle 文件(同样适用于 react-native-push-notification 中的 build.gradle 文件)

更改 firebase 包的版本号以匹配您自己的 app/build.gradle 文件中的版本号。

对我来说

compile 'com.google.firebase:firebase-messaging:17.6.0' compile 'com.google.firebase:firebase-core:16.0.8'

如果升级所有 com.google.firebase 库无法解决问题,请尝试升级 com.google.gms:google-services 处的 google 服务插件依赖项。

  • 添加最新的cordova-android平台(v8.0.0)

    ionic cordova 平台添加 android@latest

  • 添加我对这个插件的分支

    ionic cordova 插件添加 cordova-plugin-firebasex

  • 添加插件以在项目中启用AndroidX

    ionic cordova 插件添加 cordova-plugin-androidx

  • 添加插件以修补现有插件源

ionic cordova 插件添加 cordova-plugin-androidx-适配器

  • 建造!

    ionic cordova 构建 android

100% 有效

仅限 Android Studio 用户

我遇到了同样的问题。这是在之后添加的 应用插件:'com.google.gms.google-services' com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = 真

在您的应用 build.gradle 文件的最底部,我的问题已解决

 apply plugin: 'com.google.gms.google-services' 

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

我有同样的问题,但我通过将我所有的 firebase 依赖项更新为最新的依赖项来解决它。

// Firebase
    implementation 'com.google.firebase:firebase-core:17.0.1'
    implementation 'com.google.firebase:firebase-auth:18.1.0'
    implementation 'com.google.firebase:firebase-messaging:19.0.1'

    implementation 'com.firebaseui:firebase-ui-firestore:5.0.0'
    implementation 'com.firebaseui:firebase-ui-storage:5.0.0'

    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test:runner:1.3.0-alpha01'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0-alpha01'

我遇到了类似的问题,但出现了错误消息;

Dependency failing: com.google.firebase:firebase-messaging:17.0.0 -> com.google.firebase:firebase-iid@[16.0.0], but fire base-iid version was 19.0.0.

并在 App 级别使用以下版本解决了该问题 build.gradle;

// Google Firebase
implementation 'com.google.firebase:firebase-core:17.0.1'
implementation 'com.google.firebase:firebase-messaging:19.0.1'

我遇到了同样的问题。通过从 https://firebase.google.com/support/release-notes/android

更新最新的 firebase-messaging 版本解决了问题

来自

实施'com.google.firebase:firebase-messaging:19.0.0'

实施'com.google.firebase:firebase-messaging:19.0.1'

我不知道为什么突然出现构建错误。看起来很奇怪,但是当我更新 firebase-messaging 版本时,问题解决了。

我在集成 'firebase-analytics' 时遇到了同样的问题。

原代码:

implementation 'com.google.firebase:firebase-core:16.0.4'
implementation 'com.google.firebase:firebase-analytics:17.0.0'

通过代码解决:

implementation 'com.google.firebase:firebase-core:16.0.4 '
implementation 'com.google.firebase:firebase-analytics:16.0.0'

'firebase-analytics'版本改为'firebase-core'

同级

这解决了我的问题。所以你可以试试看。添加

googleServices { disableVersionCheck = true }

到app\build.gradle

firebase-messaging 的版本增加基本上是正确的,但为了防止人们看到这种情况,我建议查看 Current Android Release Notes 以使您的所有 firebase 库保持最新。

问题是,如果您实施一个需要其他 Firebase 库才能 运行 的库,然后添加第二个具有相同依赖关系但在更高版本上的库,则会失去兼容性。

截至目前,Google 在不发布新库的破坏性或不兼容版本方面取得了 的进步。使用最新的每一个,你应该没问题。

我更新了我的 firebase 消息传递版本,它解决了我的问题。

之前

implementation 'com.google.firebase:firebase-messaging:17.6.0'

已更新

implementation 'com.google.firebase:firebase-messaging:20.0.1'

当我从 Android Studio 助手设置 FCM android 客户端时,它不知何故只在我的 gradle 文件中添加了一些旧版本的 fcm,我完全复制粘贴了- 来自 android 开发者网站本身的最新版本,然后错误自行发生。希望这对面临类似问题的人有所帮助。

我想我来晚了,但也许这个解决方案会解决某人的问题。

在 build.gradle 更新 com.google.gms:google-services:4.0.0com.google.gms:google-services:4.3.3 解决了我的问题。