react-native - 如何检查应用程序是否安装在手机上?因此 Expo 可以为设备生成 ExpoPushtoken 以启用推送通知
问题描述
我正在 Expo 的帮助下使用 react native 开发一个移动应用程序。我被要求将推送通知集成到应用程序中,因此我查看了它并按照此指南进行客户端的设置和配置。
接下来,我尝试处理从客户端生成的令牌并将其保存到数据库中,以便服务器可以使用令牌作为地址向分配给它的设备发送通知,并根据博览会团队的回答这个论坛,“ 有了 Expo,只要安装了一个应用程序,Expo 推送令牌就永远不会改变。如果用户卸载并重新安装一个应用程序,他们将获得一个新的 Expo 推送令牌...... ”。
所以我想知道我们如何才能确定应用程序是否已安装/重新安装在特定设备上?所以 expo 可以为设备生成/重新生成 ExoPushToken。任何库或片段来解决这个问题?
我现在的解决方法是每当用户使用他们的用户名和密码登录到他们的帐户时生成一个新的推送令牌(我启用了 pinscreen,因此他们每次想要访问他们的数据时都不必使用他们的用户名和密码)。
它有效,但不是有效的解决方案(我猜)。有任何想法吗?谢谢!
解决方案
有一些方法可以在卸载应用程序时执行操作,如本答案中所述,我可以在 React Native 中卸载应用程序时捕获事件吗?
使用此方法,如果用户没有令牌,您可以从数据库中删除令牌并在登录时发送一个新令牌。
我个人的观点是,无论如何您都可以在每次登录请求时都这样做,但是如果由于某种原因您不想这样做,那么这种情况对您来说是否足够好?
推荐阅读
- java - 使用抽象类内容反序列化自定义集合
- npm - 如何以别名或其他名称安装 NPM 包
- c# - 当 XSLT 转换的结果在其编码中无法表示时,直接使用回退字符
- javascript - 仅使用一个输入(即全局搜索)搜索对象中的多个属性
- python - Kivy多屏管理
- angular - Spring Security 看不到 Angular 传递的凭据
- javascript - 如何制作一个浮动标签,当焦点或在 React 中有内容时可以向上移动?
- javascript - 在javascript中为多个对象设置相同的功能
- python - 从元组列表生成邻接矩阵的更优雅的方法
- google-app-maker - 使用来自页面参数的查询过滤器处理浏览器刷新