[React Native] [IOS]如何通过通知打开应用程序时捕获事件

时间:2018-08-12 21:45:05

标签: ios react-native push-notification react-native-ios

React Native具有PushNotificationIOS模块,用于获取通知数据并侦听notificaitonregister之类的事件。我想通过PushNotificationIOS.addEventListener('notification_open', myhandler);之类的通知打开应用程序时捕获事件。有办法吗?

1 个答案:

答案 0 :(得分:1)

您有两个选择。

1。使用PushNotificationIOS

您可以在重要的时刻致电PushNotificationIOS.getInitialNotification();。例如,您可以在应用程序的index.js文件中调用此方法,然后确定要呈现的组件。来自the docs

  

此方法返回一个promise。如果应用是通过推送通知启动的,则该承诺将解析为类型为PushNotificationIOS的对象。否则,它将解析为null

2。使用本机iOS App委托

来自the UIApplicationDelegate documentation

  

例如,如果您的应用是由于传入的远程通知而启动的,则您可能需要重新配置用户界面以显示与该通知相关的数据。有关可能启动您的应用程序的可能原因的列表,请参阅启动选项键。

如果由于某种原因需要更早了解,可以签入本机application(_:willFinishLaunchingWithOptions:)application(_:didFinishLaunchingWithOptions:)方法。注意,这些方法在React Native甚至被初始化之前就被调用。这是大多数React Native应用都不需要的更高级的用例。