创建持续运行的后台任务以获取实时数据

时间:2017-07-05 17:25:39

标签: react-native

我正在开发一个实时聊天/信使应用,有点像Telegram或Discord。在我的应用程序中,我需要在它们进入时实时获取消息。其他应用程序(Discord基于React Native)能够在消息进入时实时显示推送通知。我想知道如何做到这一点因为大多数后台任务包只允许它每隔几分钟运行一次。我希望运行一个持续的任务,使用socket.io来获取新消息。我更喜欢Android和iOS支持。

谢谢!

2 个答案:

答案 0 :(得分:2)

对于推送通知,您可以查看此包:https://github.com/zo0r/react-native-push-notification

对于任何其他后台任务,请查看Headless JS以及https://facebook.github.io/react-native/docs/headless-js-android.htmlhttps://github.com/devfd/react-native-workers等工作人员。

答案 1 :(得分:2)

您不能创建持续运行的后台任务,除非您进行某种黑客攻击,例如一直在后台播放无声音频,以防止您的应用程序(特别是在IOS中)被操作系统杀死

话虽如此,对于聊天应用程序,您不需要持续的后台任务,当这些应用程序在后台推送通知时中继所有这些

您可以将数据对象与通知一起发送,如果用户与通知进行交互,则可以在应用程序中接收该数据 ..并在应用程序启动后立即以任何方式从套接字(服务器)获取所有消息。