FCM 在不修改客户端代码的情况下从服务器向特定设备发送通知

FCM sending notification to specific device from server without client code modification

我在我的服务器上使用 FirebaseAdmin 和 FirebaseMessaging 向带有 Fcm 令牌的特定设备发送通知

 Message message = Message.builder()
                             .putData("body", "Body)
                             .putData("title", "Title")
                             .setToken(fcmToken).build();
  FirebaseMessaging.getInstance().sendAsync(message).get();

服务器端通知发送正确,没有错误但是客户端没有弹出通知。

向特定设备发送通知时,客户端是否必须实施 "com.google.firebase.MESSAGING_EVENT"?

因为当我从 Firebase Cloud Messaging 屏幕发送通知时不需要添加任何内容。

您需要实施 FirebaseMessagingService 才能接收通知。您可以通过发送通知标记而不是您当前使用的数据标记来避免这种情况。

注意:如果是通知标签推送,只有在应用不在前台时才会被系统处理。如果该应用程序在前台,您将不得不在上述服务中使用您自己的代码再次手动处理它