如何强制 App 在 iOS 后台不断开与融云的长连接?

前提条件
一个非常重要的前提,是您的 App 自身拥有在 iOS 系统后台长期存活的权限,否则您可以忽略下面的所有内容,使用 SDK 默认设置即可。

请首先确认 App 拥有在 iOS 系统后台长期存活的权限。

在 iOS 系统中,一般的 App 进入后台一段时间之后就会被冻结,SDK 针对这种情况已经做了良好的设计和默认的处理。
App 进入后台两分钟之后,默认对断开和融云服务器的长连接,通过 APNS 进行消息的推送,以保证用户体验。

有些 App 自身能获取到在系统后台长期存活的权限,如:外设、物联网、越狱等特殊的应用,可以通过设置使 SDK 在后台强制保持永久的长连接。

实现步骤
以下分别描述了 融云 IM SDK 4.X 版本和 5.X 版本在 iOS 后台强制保持永久的长连接的方法。

4.X 版本
4.x 版本位置在 RongIMLib.framework 中有一个 RCConfig.plist 文件,您需要将这个文件单独导入工程中。增加一个 Key 为 Connection 的 Dictionary,在其中增加一个 Key 为 ForceKeepAlive 的 Boolean 属性,将 Value 设置为 YES。SDK 就会在后台强制保持永久的长连接。

详情查看:融云-为用户提供IM即时通讯和实时音视频通信云服务

相关推荐
2501_915921432 小时前
KXBuild CI 实操,Windows/Linux 服务器接入 Jenkins 打包 iOS IPA
服务器·windows·vscode·ios·ci/cd·个人开发·敏捷流程
狗凯之家源码网2 小时前
iOS C2 V2 与 Python FastAPI 全链路远控系统深度评测
python·ios·fastapi
看浪的路人2 小时前
第6讲:Streaming 优化——告别“转圈圈“的用户体验
ios·iphone·xcode
传奇开心果编程14 小时前
【Flutter踩坑排雷】第7课:巨型 build 函数坑|全部 UI 写在同一个 build,维护难、隐性异常
android·flutter·ios·移动开发·跨平台·dart·声明式ui
瓦瓦gogo18 小时前
第一次了解 iOS 开发:从 Swift、SwiftUI 到公共组件
ios·swiftui·swift
Liben1 天前
Weex开发踩坑记录
android·前端·ios
season_zhu1 天前
Skills For Real Engineers 系列之三:需求聊清楚了,怎么一步步走主流程,做到交付?
ios·ai编程
茶底世界之下1 天前
窗边花瓶太暗?用 Awaking 看提亮室内的代价
ios
2501_915909061 天前
Windows 上用 VS Code 调试 iPhone 真机 App,KXBuild 断点、崩溃定位实操
ide·windows·vscode·ios·iphone·个人开发·敏捷流程
2501_916007472 天前
抓包工具功能对比,TraceEagle、Charles、Fiddler、Wireshark、mitmproxy 差别
前端·网络协议·ios·adb·https·fiddler·wireshark