在 React Native 中更新推送通知令牌

Posted

技术标签:

【中文标题】在 React Native 中更新推送通知令牌【英文标题】:Renew Push Notification Token in React Native 【发布时间】:2020-02-14 12:23:10 【问题描述】:

我在我的跨平台应用(iosandroid)中使用react-native-push-notification。

我完全不清楚这个插件是如何工作的,尤其是在注册新的 PN 令牌时。此时,App 启动,PushNotification.configure(...) 函数运行。因此,当 App 注册到推送通知服务(APN 和 GCM)时,它会捕获事件 onRegister:,我可以看到 PN 令牌并将其保存在 AsyncStorage 中,直到现在一切正常。

当应用程序出于某种原因必须取消注册此 Token(我们必须彻底清除 AsyncStorage,因此我们将丢失 Token)但没有从设备上卸载应用程序本身时,就会出现问题。我们尝试在清理 AsyncStorage 之前和之后运行 PushNotification.abandonPermissions(),但似乎当 App 重新启动时,onRegister: 事件不再被捕获。那么,我们的问题是:当我们必须删除第一个生成的 PN Token 时,如何在不卸载重装 App 的情况下更新 PN Token?

【问题讨论】:

【参考方案1】:

如果你使用react-native-push-notification那么你可以试试

 PushNotification.unregister();

【讨论】:

以上是关于在 React Native 中更新推送通知令牌的主要内容,如果未能解决你的问题,请参考以下文章

Expo react-native 裸工作流使用推送通知

将下载的声音用于推送通知(react-native)

Firebase 推送通知 - 如何跟踪用户 FCM 令牌?

React Native Firebase 的 getInitialNotification 仅针对第一次推送通知返回通知对象

React本机推送通知,GCM服务器返回401

在 React Native 中删除已发送的推送通知