Firebase 云消息传递报告错误

时间:2021-04-27 13:01:33

标签: firebase flutter push-notification firebase-cloud-messaging

我正在向我的应用程序发送云消息,但 Firebase-CF-Reports 告诉我它们不会被接收:

但我确信某些设备确实会收到它们。例如我自己的。所以报告中出现了问题。

我读到了关于此问题 herehere,但我已经有一个分析标签,我将与我的云消息一起发送。

这是我使用 java-admin-sdk 发送通知的方式:

Message message = Message.builder()
                .setTopic(topic)
                .setAndroidConfig(AndroidConfig.builder()
                        .setPriority(AndroidConfig.Priority.HIGH)
                        .build())
                .setApnsConfig(ApnsConfig.builder()
                        .setAps(Aps.builder()
                                .setMutableContent(true)
                                .setContentAvailable(true)
                                .build())
                        .putHeader("apns-push-type", "background")
                        .putHeader("apns-priority", "5")
                        .putHeader("apns-topic", "my.bundle.id")
                        .build())
                .putData("\"content\"", contentString)
                .putData("\"actionButtons\"", actionButtonsString)
                .setFcmOptions(FcmOptions.withAnalyticsLabel("SendToAll"))
                .build();

enter image description here

另外有趣的是,如果我不过滤 Platform/Channel(虽然仍然只过滤我的带有 Apps= 的 android 应用程序),我会得到这个:

enter image description here

但是这些数字仍然没有任何意义。我还在自己的设备上打开了一些通知。我简直不敢相信只收到了 18 个。

有人知道我做错了什么吗?

我在我的 Flutter 应用中使用了这个 fcm-sdk:

firebase_messaging: ^9.1.2

1 个答案:

答案 0 :(得分:0)

尽管我没有在官方文档中找到这个,但我在这个答案的评论中找到了这个讨论中的信息here。事实证明,订阅 FCM 中的主题不一定是永久性的。所以不要让用户订阅一个主题一次。而是在每个应用程序启动时都这样做,尽管它是

<块引用>

“技术上没有必要。这可能取决于您的用例。对于 例如,如果您想要一个所有用户都是其成员的全局主题, 你必须确保他们订阅了它。把 应用启动时的 subscribe 方法保证了这一点。”

  • -@AL。

自从我改变了这一点后,收到通知的人比以前多得多。只有开放计数仍然对我不起作用。它始终为零。