【问题标题】:FirebaseInstanceId Token retrieval failed SERVICE_NOT_AVAILABLEFirebaseInstanceId 令牌检索失败 SERVICE_NOT_AVAILABLE
【发布时间】:2018-10-01 15:41:20
【问题描述】:

我正在开发一个 Android 应用程序,它使用 Firebase 身份验证、数据库和存储。在此错误消息开始出现在 logcat 之前,一切正常。 (我没有在 firebase 控制台篡改任何配置)

E/FirebaseInstanceId: Token retrieval failed: SERVICE_NOT_AVAILABLE

即使我评论了所有与 firebase 相关的代码,也会显示此错误消息。

因此,我无法继续进行身份验证和其他与 firebase 相关的事情。
是的,我已连接到互联网,并且还从 Firebase 控制台获得了一个新的 Google-Services.json 文件,但它根本没有任何区别。

【问题讨论】:

  • 您是否启用了播放服务?
  • 是的,我的设备中同时启用了 Google Play 服务和 Google Play 商店。知道其他问题可能是什么吗?我在 android 模拟器上尝试了相同的代码并且它有效。我不知道我的物理设备是如何出现这个问题的,在此之前它运行良好。
  • 所以,我终于解决了!事实证明,谷歌播放服务已启用,但它们受到蜂窝数据的限制。为了解决这个问题,我做了以下操作:App Data Usage -> Google Services -> Turn Off the "Restrict Cellular Data Access" 选项
  • 重启你的手机..为我工作..
  • 只启用一种类型的网络连接(wifi 或 lte)对我有用。

标签: android firebase firebase-authentication firebase-cloud-messaging


【解决方案1】:

您需要将模拟器更新到包含 Google Play 服务的最新版本

【讨论】:

    【解决方案2】:

    我更改了我的模拟器,现在它可以正常工作,没有任何错误。

    【讨论】:

      【解决方案3】:

      AVD Manager 中的“Cold Boot Now”设备对我有用。

      编辑: 更新模拟器后,它比冷启动有所帮助。 – parohy 4 月 5 日 9:22

      【讨论】:

      • 在更新模拟器后比冷启动更有帮助。
      • 冷启动为我做了。谢谢
      • 一直都是这样!?是否有特定原因可以解决此问题?也许每种口味都有不同的 applicationIdSuffixes 或其他东西?
      • 这个技巧也适用于我。在 Android Studio 上通过模拟设备使用 Flutter。
      • 我去了 AVD Manager,点击设备,然后显示高级设置,最后我切换到“立即冷启动”,然后保存,我的问题就解决了,谢谢!
      【解决方案4】:

      我也遇到过这个问题。正如我所见,发生这种情况的原因有很多。

      最后我发现我的问题是当前最新的 Facebook Android SDK 版本 (v4.36.0) 有一个错误。如果我将其设置回 v4.35.0,一切正常。也许这些信息可以帮助将来的人。

      你可以在这里找到版本:https://github.com/facebook/facebook-android-sdk/releases

      【讨论】:

      • 使用 com.facebook.android:facebook-android-sdk:4.36.0 导致加载我的应用程序时出现白色空白屏幕。更改为 4.35.0,修复了问题。谢谢!
      • 哇!你刚刚救了我!
      • 我已降级到 FacebookSDK v4.35.0 并解决了问题!非常感谢!
      • 我在 Android Q - API 29 中遇到了同样的问题,这解决了它。谢谢
      • 很高兴听到这个消息!您也可以尝试升级到最新版本,因为它已在即将发布的版本中修复。
      【解决方案5】:

      停止模拟器设备并打开 AVD 管理器面板,编辑设备配置。 在“Emulated Performance”部分的设备配置面板“Show Advanced Settings”中选择“Cold boot”选项作为Boot Option然后点击Finish,它应该可以工作了。

      【讨论】:

        【解决方案6】:

        根本原因:您错过了设备中的谷歌服务。 因此,如果您使用模拟器,请在高级设置中应用“冷启动”模式, 如果您使用真实设备,请更换另一个

        【讨论】:

          【解决方案7】:

          对于未来的读者:

          当我设置设备时发现此错误日期与当前日期不同 并打开。我的应用程序日志开始打印类似的日志。 解决方法:重启你的设备,它就会开始正常工作了。

          【讨论】:

            【解决方案8】:

            检查是否启用了 Google Play 服务

            如果仍然显示错误现在尝试这些步骤

            第 1 步 - 停止模拟器设备

            第 2 步 - 打开 AVD 管理器面板,编辑设备配置。在“模拟”中的设备配置面板“显示高级设置”中 性能”部分选择“冷启动”选项作为启动选项,然后单击完成,它应该可以工作。

            如果这不起作用,请尝试在不同的模拟器上工作

            【讨论】:

              【解决方案9】:

              您可能正在设备上使用已弃用的 Google Play 服务版本,请先尝试升级您的 Play 服务。

              【讨论】:

              • 这更像是一个评论而不是一个答案
              【解决方案10】:

              要修复它,您应该检查您的 Google Play 服务是否已正确启用

              如果仍然显示相同的错误,那么您需要尝试以下步骤

              1. 你需要停止你的模拟器设备。

              2. 之后,您需要打开 AVD 管理器面板,然后编辑设备配置。在您的设备配置面板中,转到“Emulated Performance”部分中的“Show Advanced Settings”,然后您需要选择“Cold boot”选项作为启动选项,然后您应该点击完成。

              执行上述步骤后,您与 firebase 相关的问题必须得到修复,并且应该可以正常工作。

              【讨论】:

                【解决方案11】:

                对我来说,这是我的模拟器的连接问题。我无法加载公司 VPN 之外的网站。如果您遇到此问题,可能值得确认您可以这样做(在设备的浏览器上加载 yahoo 或 stackoverflow)。一旦我弄清楚我的模拟器的连接问题,我就能够获得令牌。

                【讨论】:

                  【解决方案12】:

                  就我而言,我遇到了 Internet 连接问题。确保您的 Internet 连接足够强大以生成 FcmToken。

                  【讨论】:

                    猜你喜欢
                    • 2019-08-20
                    • 2019-02-08
                    • 2020-11-26
                    • 2023-03-11
                    • 2019-12-15
                    • 2018-06-05
                    • 2018-12-01
                    • 1970-01-01
                    • 2020-06-23
                    相关资源
                    最近更新 更多