Crashlytics error: E/FirebaseCrashlytics: Error fetching settings. A valid Firebase Project ID is required to communicate with Firebase server APIs

Crashlytics error: E/FirebaseCrashlytics: Error fetching settings. A valid Firebase Project ID is required to communicate with Firebase server APIs

我正面临这个问题它说:

Error fetching settings. java.lang.IllegalArgumentException: Please set your Project ID. A valid Firebase Project ID is required to communicate with Firebase server APIs: It identifies your application with Firebase. Please refer to https://firebase.google.com/support/privacy/init-options.

2021-08-09 16:58:43.621 14510-14510/com.Whosebug I/FirebaseCrashlytics: Initializing Firebase Crashlytics 18.2.0 for com.Whosebug 2021-08-09 16:58:43.698 14510-14619/com.Whosebug V/DynamiteModule: Dynamite loader version >= 2, using loadModule2NoCrashUtils 2021-08-09 16:58:43.937 14510-14625/com.Whosebug V/DynamiteModule: Dynamite loader version >= 2, using loadModule2NoCrashUtils 2021-08-09 16:58:46.269 14510-14624/com.Whosebug E/FirebaseCrashlytics: Error fetching settings.
    java.lang.IllegalArgumentException: Please set your Project ID. A valid Firebase Project ID is required to communicate with Firebase server APIs: It identifies your application with Firebase.Please refer to https://firebase.google.com/support/privacy/init-options.
        at com.google.android.gms.common.internal.Preconditions.checkNotEmpty(com.google.android.gms:play-services-basement@@17.6.0:4)
        at com.google.firebase.installations.FirebaseInstallations.preConditionChecks(FirebaseInstallations.java:179)
        at com.google.firebase.installations.FirebaseInstallations.getId(FirebaseInstallations.java:240)
        at com.google.firebase.crashlytics.internal.common.IdManager.fetchTrueFid(IdManager.java:167)
        at com.google.firebase.crashlytics.internal.common.IdManager.getCrashlyticsInstallId(IdManager.java:117)
        at com.google.firebase.crashlytics.internal.settings.network.DefaultSettingsSpiCall.applyHeadersTo(DefaultSettingsSpiCall.java:184)
        at com.google.firebase.crashlytics.internal.settings.network.DefaultSettingsSpiCall.invoke(DefaultSettingsSpiCall.java:108)
        at com.google.firebase.crashlytics.internal.settings.SettingsController.then(SettingsController.java:199)
        at com.google.firebase.crashlytics.internal.settings.SettingsController.then(SettingsController.java:192)
        at com.google.android.gms.tasks.zzp.run(Unknown Source:2)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at com.google.firebase.crashlytics.internal.common.ExecutorUtils.onRun(ExecutorUtils.java:64)
        at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:27)
        at java.lang.Thread.run(Thread.java:923)

我已经下载了我的 google-services.json 并覆盖了之前的。然而,什么都没有解决。因为我在项目和应用级别 build.gradle 中都有这些 google-services 设置。该应用程序已在 Firebase 控制台中启用。为什么我的 google-services.jsonproject_id 没有被正确读取?

implementation platform('com.google.firebase:firebase-bom:28.3.0')
implementation 'com.google.firebase:firebase-analytics'
implementation 'com.google.firebase:firebase-crashlytics'

我已经找出问题的原因了。

不要更新到 'com.google.gms:google-services:4.3.9' 尽管 Android Studio 建议这样做!

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

我刚刚将其还原为 4.3.8,问题已解决。

目前,Google的official document只提到了4.3.8。不要轻率地相信 Android Studio。