当用户退出我的应用程序并且我不再希望他接收到设备的通知时,我该如何处理这种情况.
我试过了
FirebaseInstanceId.getInstance().deleteToken(FirebaseInstanceId.getInstance().getId(), FirebaseMessaging.INSTANCE_ID_SCOPE)
Run Code Online (Sandbox Code Playgroud)
但我仍然收到我的设备的通知registration_id
.
我还确保这是我应删除的令牌:
FirebaseInstanceId.getInstance().getToken(FirebaseInstanceId.getInstance().getId(), FirebaseMessaging.INSTANCE_ID_SCOPE)
Run Code Online (Sandbox Code Playgroud)
或者简单地说FirebaseInstanceId.getInstance().getToken()
).
我也尝试过FirebaseInstanceId.getInstance().deleteInstanceId()
,但是下次我打电话给FirebaseInstanceId.getInstance.getToken
我时会收到空(它在第二次尝试时起作用).
我想,在deleteInstanceId
我能够立即getToken()
再次打电话之后,它看起来像是一个黑客.并且还有这个答案表明不应该这样做,但它建议删除显然不起作用的令牌.
那么处理这个问题的正确方法是什么?
我使用 React Native FCM 进行消息传递,当用户注销应用程序时,我想删除 FCM 令牌,以便用户不会再次收到通知。
下面是我的注销代码。
_signOutAsync = async () => {
this.logoutEvent()
API.post('customer/auth/logout', null, {
headers: {
Authorization:
'Bearer ' + (await AsyncStorage.getItem(Config.ACCESS_TOKEN))
}
}).then((response) => {
console.log(response)
})
this.clearData()
}
Run Code Online (Sandbox Code Playgroud)
谢谢。