【发布时间】:2021-09-08 08:10:30
【问题描述】:
我正在使用 react-native-push-notification。 当应用程序处于后台/终止状态时,我遇到了通知不显示的问题,多个论坛和 GitHub 中的解决方案是我们在 index.js 中初始化和配置推送通知 (PushNotification.configure()) 在 PushNotification.configure() 函数内部, onNotification() 是点击推送通知时调用的函数。单击时,我想导航到应用程序中的特定屏幕,但目前无法实现,因为 index.js 中没有可用的导航道具
有什么方法可以实现导航吗?
【问题讨论】:
-
你用的是什么导航库?您确定您使用的不支持深层链接/路径吗?如果是这样,只需将路径作为 URL 发送,将其传递给导航库,并且(假设您配置正确)您一切顺利,因为所有处理/路径解析都将自动完成。 (作为参考,
react-navigation有) -
我尝试了深度链接选项。当应用程序处于终止状态并单击推送通知时,应用程序会以启动屏幕启动,然后导航到预期屏幕。但是,我的启动画面也有一些重定向逻辑,因此,在此过程中会导航到多个屏幕。您对此有何建议?
-
我实际上有一个非常相似的问题。通过重构我的应用程序以将整个路径解析逻辑传递给导航容器来解决它。通过使用基于 redux 状态(登录与未登录在我的情况下)返回正确导航容器的包装器,我让适当的导航容器处理链接。
-
这个解决方案需要 redux 吗?
-
不,这只是我的情况。这个想法是拥有 某种状态(redux 或其他),拆分导航容器(例如,未登录的流程与登录的屏幕)将数据传递到适当的导航容器,并将链接逻辑传递给处理任何链接并路由到相应的屏幕。
标签: reactjs react-native react-native-android react-native-ios react-native-push-notification