使用 FCM 向 Android 中的所有用户发送第一个通知时出错

Error while sending the first notification to all users in Android using FCM

我开始在我的应用程序中使用 FCM,今天我尝试向我的应用程序中的所有用户发送一个小通知。 我下载 json 很好,它工作正常,IDE 没有错误,但是当我发送通知时问题来了。

当我们的服务器发送推送通知时,我在我的应用程序日志中收到以下两个错误:

E/FirebaseInstanceId: Failed to resolve target intent service, skipping 
classname enforcement

E/FirebaseInstanceId: Error while delivering the message: ServiceIntent not found.

我没有在我的 AndroidManifest.xml 中添加任何内容,我应该添加一些内容吗?我将所有内容都添加到 Gradle,所以不是那个。谢谢

要在您的应用程序上配置 FCM,您需要:

  • 添加依赖。例如:implementation 'com.google.firebase:firebase-messaging:11.6.2'
  • 创建扩展 FirebaseMessagingService 的服务并将其添加到您的清单文件中。此服务将负责处理来自 FCM 的传入消息。
  • 创建另一个扩展 FirebaseInstanceIdService 的服务并将其添加到清单中。该服务将负责处理 FCM 令牌的创建、更新和轮换。

之后,通过调用 FirebaseInstanceId.getInstance().getToken() 检索 FCM 令牌并将其发送到您的 server/webservice。

此外,请记住 FCM 依赖于 Play 服务,因此您需要检查设备是否安装了它。您可以在 Activity onCreate() and/or onResume() 方法中执行此操作。

有关如何配置 FCM 的更多信息,请refer to the docs

详细了解如何 check for Play Services