为了首次注册FCM
_firebaseMessaging.getToken().then((String? token) {
_setToken(token);
});
在应用程序中,我需要互联网连接来安装(FIS)firebase安装服务,并使用firebase服务(如FCM)。目前,我在根窗口小部件的初始化状态下有上述代码,但直到稍后才检查Internet连接。如果用户在全新安装后没有通过互联网运行应用程序,这会抛出一个错误。2在用户验证后移动fcm注册安全吗?Firebase文档指出:https://firebase.google.com/docs/cloud-messaging/manage-tokens
如我们的客户端设置指南所述,您的应用应在初始启动时检索此令牌,并将其与时间戳一起保存到应用服务器。
但是如果两个用户使用不同的账户共享同一台设备,如果我们在身份验证之前取回fcm令牌,他们可能会收到一个针对对方的推送通知,所以我相信这些文档并不是严格意义上的应用启动
2条答案
按热度按时间nbnkbykc1#
你可以做到这一点肯定。我用FCM在我的一个项目,如果用户登录我保存令牌,但如果没有,我首先要求用户登录,之后我用来保存设备令牌。这应该只使用,否则消息接收设备上,即使用户没有登录到应用程序,这似乎是非常奇怪的。
注:如果用户从应用程序注销,请记住也要删除令牌。
ee7vknir2#
在我的例子中,我有这样的东西使应用程序停留在初始化
等待消息。订阅到主题(主题);
所以我使用connectivity_plus来检查应用程序是否连接到互联网