首页 文章

应用程序中未收到特定的FCM主题消息

提问于
浏览
1

我开始使用 topic 'a' ,效果很好 .
一两天后,我尝试发送另一条消息,并注意到不再收到主题 a 消息 .
我已经在主题 a 订阅的正下方添加了一个订阅调用 b ,并且收到了主题 b 消息,没有任何问题 .

FirebaseMessaging.getInstance().subscribeToTopic("a");
FirebaseMessaging.getInstance().subscribeToTopic("b");

我've also made sure there is no '取消订阅'随时随地打电话 .
我已尝试根据HTTP API使用Firebase控制台和发布请求发送消息,这些消息都适用于主题 b ,但不适用于主题 a .

我该怎么调试呢? (消息没有到达设备..)

1 回答

  • 0

    您可以使用此CURL命令查看设备的服务器上存在哪些订阅:

    curl --header "Authorization: key=<yourServerKey>" 
         --header "Content-Type: application/json"
         https://iid.googleapis.com/iid/info/<deviceToken>?details=true
    

    其中: <yourServerKey> 可从FireMap Console项目设置中获取,用于Cloud Messaging, <deviceToken>FirebaseInstanceId.getInstance().getToken()documentation here)返回的152-char标记 .

    每次你的应用初始化时你都在调用 subscribeToTopic() 吗?

    如果设备令牌发生变化,我非常有信心订阅不再有效 . 在您的测试期间,在您订阅主题'a'后,是否有任何原因导致device ID或令牌发生变化?

相关问题