我有一个在 iOS 上运行的 Cordova 应用程序(codova(3.4.0),很快也在 Android 上运行。推送通知已实现并正常工作。我无法通过推送通知检测应用程序何时启动并将应用程序重定向到右侧页。
注意:这与应用在后台运行时从推送通知启动应用无关。只有当应用程序完全关闭时!
我现在有以下工作流程:
常规启动:
- 等待 cordova.js 触发 ondeviceready 事件。
- 在 ondeviceready 事件中重定向到我的应用程序的启动视图(通过 window.location.hash)
从推送通知冷启动应用程序:
- 等待 cordova.js 触发 ondeviceready 事件。
- 在 ondeviceready 事件中重定向到我的应用程序的启动视图(通过 window.location.hash)
- 插件启动并在我的应用程序中触发一个名为 notificationreceived 的 javascript 函数
- 在notificationreceived 函数中重定向到基于推送通知的视图
如您所见,冷应用启动场景会转到启动视图,这是不必要的,并且会导致用户等待第一个视图加载,只是再次被重定向。
问题是当 deviceready 触发时,我的 javascript 代码还不知道即将到来的推送通知,所以我正在寻找解决这个问题的方法。
有没有办法将额外的参数传递给 deviceready cordova 事件?或者有人有其他想法或解决方案来解决这个问题吗?