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

郑天寿
• 阅读 427

前提条件 一个非常重要的前提,是您的 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 就会在后台强制保持永久的长连接。 详情查看:https://www.rongcloud.cn/?utm_source=SEO&utm_term=helloworld

点赞
收藏
评论区
推荐文章
Chase620 Chase620
3年前
iOS开发:后台运行以及保持程序在后台长时间运行
第一部分1.先说说iOS应用程序5个状态:停止运行应用程序已经终止,或者还未启动。不活动应用程序处于前台但不再接收事件(例如,用户在app处于活动时锁住了设备)。活动app处于“使用中”的状态。后台app不再屏幕上显示,但它仍然执行代码。挂起app仍然驻留内存但不再执行代码。按下Home键时,app从活动状态转入后台,绝大部分app通
实例|APICloud AVM框架开发视频会议APP
APP开发采用的APICloud平台的AVM多端应用开发框架,使用avm.js一个技术栈可同时开发Android&iOS原生App、小程序和iOS轻App,且多端渲染效果统一;全新的App引擎3.0不依赖webView,提供百分百的原生渲染,保障App性能和体验与原生App一致;现有api直接映射兼容小程序接口,延续
Stella981 Stella981
2年前
Flutter仿写一个iOS风格的通讯录
此文章主要介绍怎么使用Flutter的Cupertino风格控件,写一个iOS风格的通讯录,还有在此过程中遇到的问题及解决办法。大家在用Flutter写App的时候,一般都会使用material风格的控件,因为material风格的控件比较丰富,但是,他在iOS上就会显得Android气息比较重,不太适合,所以本文章将通过用仿写iOS通讯录,系统地介绍C
Wesley13 Wesley13
2年前
H5唤醒APP
Android使用iframe唤起,ios采用window.location.href唤起更合适一点。1.ios系统: 在wap中唤起app其实应用最最广泛的并不是UniversalLink,而是直接Schema跳转 window.location.href "taobao://fulushuka.tmall.com/shop/view\_
Stella981 Stella981
2年前
IOS之UIWebView的使用
刚接触IOS开发1年多,现在对于混合式移动端开发越来越流行,因为开发成本上、速度上都比传统的APP开发要好,混合式开发是传统模式与PC网页端相结合的模式。那么提到了APP的混合模式开发,在Android开发中有WebView作为混合模式开发的桥梁,当然在IOS中也同样有一个UIWebView组件来作为混合模式开发的桥梁,那么下面就对UIWebVi
Stella981 Stella981
2年前
OSChina 技术周刊第二十六期 —— 未来 Docker 的安全
每周技术抢先看,总有你想要的!移动开发1.【博客】JFinalJqueryMobile日志记录webapp效果图(http://my.oschina.net/realfighter/blog/387477)2.【博客】IOS开发—App在IOS8的simulator运行时,定位卡死
Stella981 Stella981
2年前
Android 监听APP进入后台或切换到前台方案对比
在我们开发的过程中,经常会遇到需要我们判断app进入后台,或者切换到前台的情况。比如我们想判断app切换到前台时,显示一个解锁界面,要求用户输入解锁密码才能继续进行操作;我们想判断app切换到后台,记录一下log;或者当用户切换回前台时,我们想刷新一下页面的数据等等......android里面监听app前后台的方案很多(这还是得归根于安卓提供了丰富的a
Stella981 Stella981
2年前
Objective
ios发送邮件,第三方库SKPSMTPMessage发送邮件的使用. 不需要调用系统的邮件,可以在app后台发送邮件.下面是整理的一个使用SKPSMTPMessage方法.////NISendMail.m////Createdby 罗若文on16/7/7.//Copyright©20
郑天寿 郑天寿
8个月前
iOS 常见问题总结及解决方法
SDK如何初始化在您需要使用融云SDK功能的类中,import相关头文件。import如果是Swift的话,需要在您工程的BridgingHeader.h文件中加入SDK的引用import请使用您之前从融云开发者控制台注册得到的AppKey,通过RCIM的
鸿蒙跨端实践-ArkTS和CAPI的混合开发实现
一、背景在文章中,讲述了动态化适配鸿蒙的方案实现,当在鸿蒙系统进行UI渲染的时候,我们使用了系统的组件进行递归渲染。在iOS和Android也是借助各自系统组件进行的渲染,但是在鸿蒙系统会存在以下4个严重问题:1.UI层级过多以金融APP理财频道页中的一个