用户注销时如何发送通知?
Posted
技术标签:
【中文标题】用户注销时如何发送通知?【英文标题】:How can I send notifications when a user is logged out? 【发布时间】:2019-05-02 01:40:38 【问题描述】:我在我的应用程序中开发了推送通知 (FCM) 功能,运行良好。我面临的唯一问题是设备在这段时间内离线/注销,如果用户收到他们丢失的通知,而不是在用户上线时发送。
【问题讨论】:
给更多的细节,没有任何示例代码是不可能帮助你的。 为什么不使用 fcm Firebase Cloud Messaging 它比 GCM 更优化。并且很容易实现 @MasterFathi ohhh ..sorry..我编辑了我的问题..我已经使用过 FCM @PedroMassango 我添加了图片来解释错误 您发送的通知对象是只包含数据还是包含通知正文? 【参考方案1】:从我从您的屏幕截图中看到的问题发生是因为您正在向空的 deviceToken 发送通知。如果要发送通知,则需要停止删除该令牌。
要从您的 android 应用程序中获取新令牌,请编写此代码
System.out.print("Firebase Token "+ FirebaseInstanceId.getInstance().getToken());
【讨论】:
我这样做了,但是当注销并与另一个用户一起登录到我的应用程序时....token_id 没有改变....我的意思是 2 个具有一个令牌 ID 的用户所以我尝试删除令牌注销时的id Token是App-Device关系的ID结果 @esdebon 所以.. 我可以使用 Auth ID 令牌替换 FCM 令牌/实例 ID 令牌来推送通知........我认为是 Auth ID令牌标识特定应用程序的特定用户?? 您需要为每个用户存储令牌而不是删除它,当您想向该用户或所有连接的用户发送通知时,您转到用户列表并获取所有令牌并发送每个分别。【参考方案2】:推送通知有一个过期时间,这是你发送通知时的一个参数,这个过期时间是天的数量级,当用户在发送通知的期限内重新上线时。也许您需要使用 Firebase 创建通知,因为 GCM 很快就会被弃用。
注册令牌可能会在以下情况下发生变化:
The app deletes Instance ID
The app is restored on a new device
The user uninstalls/reinstall the app
The user clears app data.
【讨论】:
以上是关于用户注销时如何发送通知?的主要内容,如果未能解决你的问题,请参考以下文章