【问题标题】:How to unsubscribe from FCM notifications after logout from app?从应用程序注销后如何取消订阅 FCM 通知?
【发布时间】:2017-04-22 04:28:43
【问题描述】:

我已经在我的应用中实现了 Firebase 云消息以用于推送通知。一切正常。但是通知甚至让用户从应用程序中注销。

听说,我需要在用户退出应用时删除 FCM 令牌。

所以我在注销方法中这样做了:

-(void)logout{
        [[FIRInstanceID instanceID] deleteIDWithHandler:^(NSError *error){
            NSLog(@"%@",error);
        }];
}

但这不起作用,下次用户登录[[FIRInstanceID instanceID]token] 时会以null 的身份出现。

如何做到这一点?

【问题讨论】:

    标签: ios objective-c firebase firebase-cloud-messaging


    【解决方案1】:

    可以删除令牌,但最好直接取消订阅。如何做到这一点,取决于您最初订阅更新的方式。

    如果您是subscribed to a topic,则在用户注销时您将需要unsubscribe

    【讨论】:

    • 我正在订阅这样的主题 [[FIRMessaging messing] subscribeToTopic:@"/topics/global"];因此,当用户退出时,我必须这样做 [[FIRMessaging messages] unsubscribeFromTopic:@"/topics/global"];对吗?
    • 是的,这将是取消订阅同一主题的方式。
    • 但我可以看到这是用于 FCM 消息传递的。 FCM 通知也一样吗?
    • 是的,Firebase 通知本质上只是 Firebase 云消息传递的一个包装器。但是由于您在原始帖子中提到了 FCM,所以我只喜欢 FCM 的文档。我建议你试一试,如果仍然有问题,再报告?
    • @himanth 不建议您在每次用户注销时都删除令牌。见here
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多