React Native:推送通知冻结了iOS(白屏)上的应用程序

时间:2019-01-21 16:12:56

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

不幸的是,我遇到One Signal和我的本机应用程序问题。我不知道为什么,但是以某种方式我的推送通知不再起作用了。.但是仅在iOS上..Android也遇到了同样的问题,但是Android又可以工作了。因此,这意味着问题实际上不是真正的反应本机代码,因为它可以在Android上运行。

但是,当我在iOS设备上收到通知时,屏幕保持白色,并且应用程序不会崩溃。这实际上不是一个好原因,这意味着我没有任何崩溃日志。.而且您无法在MacBook上调试iOS设备,因为Apple已停用,无法在iPhone模拟器上接收推送通知。.

所以,我真的不知道该怎么办。我所做的只是更换图标和启动屏幕。在Android和iOS上都可以。同样令人困惑的是,在XCode上没有任何问题的情况下对应用程序进行了编译和构建。

我已经在GitHub上阅读了一些问题,但是它们都没有起作用。.我真正想知道的是,为什么它可以在我的Android设备上运行,而不在我的iOS设备上..

我已经尝试通过删除node_modules文件夹并由npm install再次创建文件夹来解决该问题。但是,这不能解决问题。我还再次运行了pod install,并检查了OneSignal文档以再次检查是否已正确安装所有内容。是的,所有内容均已正确安装了。

你们对如何做以及如何解决问题有任何想法? 在我点击通知后,应用程序启动,然后保持在白屏上。

如果该应用程序在后台运行,并且我点击了推送通知,则一切正常!

但是当我进入应用程序并收到推送通知时,该应用程序“崩溃”并保留在白屏上。同样,当该应用程序完全关闭并且我点击了推送通知时。该应用程序“崩溃”并保持在白屏上...

你们可以帮助我吗? 亲切的问候,谢谢!

1 个答案:

答案 0 :(得分:0)

如果您没有IOS设备,而只有仿真器,那么调试它将变得非常困难。

您可以尝试在应用程序内部的重要点输出一些带有响应值的测试字符串(例如,用于接收通知,用于发送通知等的功能)。

但是,如果您需要更多帮助,则必须提供更多信息。您将哪个库用于Firebase通知(fcm,rnfirebase.io或其他)...您是如何实现的...

  

如果该应用程序在后台运行,而我点击了推送通知   一切正常!   但是当我进入应用程序并收到推送通知时,   应用程序“崩溃”并保持在白屏上。

是的,这里是您开始调试的起点。如果在后台工作中收到通知,则可能在侦听前台通知的事件处理程序上发现问题。

您是否有一个干净的代码结构,您在其中使用try&catch处理所有基于api的请求(通知方法)?然后,不难通过回显一些捕获到的错误来找到问题