我有一个Flutter应用程序,它在第一次运行时会创建FCM令牌,如下所示:
_firebaseMessaging.getToken().then((token) {
//save my token here
});
但是,我知道此令牌可以不时刷新一次。为了获得这个新的刷新令牌,我必须调用onTokenRefresh
方法:
Stream<String> fcmStream = _firebaseMessaging.onTokenRefresh;
fcmStream.listen((token) {
saveToken(token);
});
问题是我不知道这是否正确。 saveToken(token)
行始终在应用程序运行时执行,但在应用程序不在前台/后台运行时有效吗?
我的意思是,即使用户关闭了该应用,这个onTokenRefresh
仍会继续监听吗?
如果没有,如果该应用很长时间没有启动,如何获得新令牌?
答案 0 :(得分:2)
基于async/await fcm令牌的事件将在以下事件中更改:
如果应用很长时间没有启动,并且以上事件均未发生,则应用令牌不会更改。