我不小心删除了FCM令牌,现在使用新令牌(它看起来像是由SDK返回的那个)我无法发送任何消息。 我得到的错误是......
Error: The provided registration token is not registered. A previously valid registration token can be unregistered for a variety of reasons. See the error documentation for more details. Remove this registration token and stop using it to send messages.
知道如何刷新FCM令牌吗?
更新
这将在每次页面加载时执行
messaging
.requestPermission()
.then(() => {
return messaging.getToken()
})
.then((token) => {
if(token){
return firebase.firestore().collection('users').doc(firebase.auth().currentUser.uid).set({
notificationToken: token
}, {merge: true})
}
})
.catch((e)=>{
console.error(e, 'Unable to get token')
})
答案 0 :(得分:0)
我去了chrome的开发者控制台并从Notifications中删除了应用程序,因此应用程序再次要求我获得权限。
听起来像这个问题:https://github.com/firebase/quickstart-js/issues/210
您可以尝试使用4.13版本吗?
答案 1 :(得分:0)
String fcmToken = FirebaseInstanceId.getInstance().getToken();
在数据库中保留fcm令牌。当用户登录到应用程序时,发送带有用户名和密码的fcm令牌值。