TokBox iOS - 应用程序后台进程信号不起作用

Posted

技术标签:

【中文标题】TokBox iOS - 应用程序后台进程信号不起作用【英文标题】:TokBox iOS - App Background process singal not working 【发布时间】:2017-06-21 13:39:51 【问题描述】:

我们在 ios 应用中遇到了一些奇怪的问题,我们正在处理应用处于后台模式时的信号。

它在 xcode 模拟器中完美运行,并且在真实的 iOS 设备中无法运行。应用后台模式下收不到信号。

我们是否需要启用 iOS 设备中的任何设置来处理此问题?

而且,它在安卓设备上完美运行。

请帮助解决这个问题。 (此外,项目-> 功能-> 后台模式-> 音频、AirPlay、PIP 已启用,以便在后台工作。)

【问题讨论】:

【参考方案1】:

发送到后台的应用程序通常会被暂停,除非进程有理由保持运行。在使用 OpenTok SDK 的情况下,这通常意味着应用程序将被暂停除非有一个发布者和/或订阅者正在运行——后台权限与 AVAudioSession 相关联。

如果您试图在应用处于后台时仅在没有任何订阅者/发布者的情况下保持会话连接,则不建议这样做。为 OpenTok 会话保持 websocket 处于活动状态需要每隔几秒钟发送一次数据,从而对能源和数据成本造成不必要的负担。因此,建议您通过 APNS 而不是通过 OpenTok 会话进行离线信令。

我相信您可能已经看到了这一点,但为了完整起见,这里提供了有关该主题的更深入的文章:https://tokbox.com/developer/sdks/ios/background-state.html

披露:我为 TokBox 工作。

【讨论】:

我们无法在后台模式下接收信号。当应用程序处于前台模式时,会收到所有消息。 [OTSessionDelegate session:receivedSignalType:fromConnection:withString:] ::: 请告诉我,是否可以在 iOS App 后台模式下的会话中接收信号?它在 android 应用程序和 iOS 模拟器中工作。为什么不能在真正的 iOS 设备上工作? 由于我上面提到的原因,该应用程序可能在后台被暂停。当进程暂停时,不会有网络活动,因此不会收到任何信号。 @Poornima developer.apple.com/library/content/documentation/iPhone/… 如果您有兴趣,可以给个大概的思路

以上是关于TokBox iOS - 应用程序后台进程信号不起作用的主要内容,如果未能解决你的问题,请参考以下文章

自定义 Django 信号不起作用

怎么让 Linux 进程在后台运行?

disown 忽略hup信号,使后台运行

后台执行进程的方法

10.21 作业控制信号

#yyds干货盘点#进程管理信号和前后台执行