React Native-IOS平台—如何在接收到推送通知时使应用程序从后台进入焦点/前景

时间:2019-02-24 05:33:50

标签: ios react-native apple-push-notifications background-foreground

我正在使用OneSignal向我的React Native App发送推送通知。收到通知后,我将弹出“自定义React Native”屏幕以接受用户的一些输入。

我按照此处提到的说明进行操作:

https://documentation.onesignal.com/docs/react-native-sdk

https://documentation.onesignal.com/docs/react-native-sdk-setup

以上两个指南主要说明了如何初始化OneSignal,设置通知侦听器和其他必需的本机设置。

完成上述配置后,我可以向iPhone上的App发送通知(并调出自定义屏幕),但前提是该应用程序位于Foreground中。如果在后台,则该应用未收到通知。

然后,我按照Oleg Kalyta的以下文章进行配置:

https://hackernoon.com/complete-guide-receive-push-notifications-in-react-native-ios-app-38b1ec5b1b15

它说明了如何配置PushNotificationIOS RN软件包以及如何设置更多功能和侦听器。尽管我不太了解为什么已经配置了OneSignal侦听器,为什么需要这些功能。以及如何影响太多听众的应用程序性能。

完成此配置后,即使该应用程序处于后台运行状态,我也可以接收通知(它位于iPhone顶部,并在2-3秒后消失)。但这不会使我的应用程序处于焦点状态,并且不会显示“自定义”屏幕。

我正在寻求帮助以解决问题,如果应用程序处于后台并且收到通知,则显示“自定义”屏幕。

有趣的是,OneSignal侦听器正在被调用,我也能够在日志中看到发送的数据,但是我不确定如何重点关注IOS App。

在Android中,我什至可以解锁手机并集中精力接收通知。我已经使用Android PowerManager和WindowManager软件包编写了一些Android本机代码。我正在从我的React Native OneSignal侦听器中调用此本地代码来唤醒电话,使应用程序处于焦点并显示自定义屏幕。

我试图在IOS中实现的目标。

任何人都可以帮助。我在网上浏览了很多文章,但找不到任何解决方案。

0 个答案:

没有答案