【发布时间】:2020-04-01 01:03:49
【问题描述】:
我是 DART 的初学者。 实际问题是“即使用户已注销,应用也会收到 FCM 通知。” 因此,如果用户已注销,我想阻止通知。 我的问题是,“我可以检查新通知是否针对当前登录人”(使用成功登录后从服务器发送的令牌 ID)。
我可以在收到通知后添加检查语句吗? 在使用令牌 ID 将其显示在托盘中之前
if(stored_apiToken == apiToken_sent_with_the_Notification){
ShowNotification();
}别的{
dontShowNotification();
}
提前致谢
【问题讨论】:
-
您将如何识别已发送消息中的收件人?这似乎是必要的。
-
onMessage: (Map<String, dynamic> message) async{ print('on message $message'); }, // ignore: missing_return onResume: (Map<String, dynamic> message) async{ print('onResume $message'); }, // ignore: missing_return onLaunch: (Map<String, dynamic> message) async{ print('onLaunch $message'); }, -
使用 onMessage、onResume 和 onLaunch
-
我实际做的是, 1. 打开应用程序时我得到一个 FCm 令牌。 (卸载应用后 FCM 令牌会发生变化)。 2. 当我调用 LoginApi 时,我将一些凭据与 FCMToken 一起传递。 3. Backe-end给出一个API key作为响应。 (我将它存储在 SharedPreferences 中) 4. 使用登录时我已经提供给服务器的 FCM 令牌从服务器发送通知。 5. 该 FCMToken 也包含相同的 API 密钥。 那么有什么方法可以通过任何比较或其他方式检查传入的 FCM 通知是针对 userA 还是 userB。
标签: android firebase flutter push-notification flutter-web