特殊的App如何在iOS后台强制保持永久的长连接?

仅仅针对获取了特殊权限、能够在系统后台长时间存活的App,使用融云的SDK如何在后台强制保持永久的长连接,以及相关注意事项
发布时间: 2015-11-24 11:02

回答:

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


设置SDK在后台强制保持永久的长连接的步骤:

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

在iOS系统中,一般的App进入后台一段时间之后就会被冻结,SDK针对这种情况已经做了良好的设计和默认的处理。

App进入后台两分钟之后,默认对断开和融云服务器的长连接,通过APNS进行消息的推送,以保证用户体验。

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


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

如图:

屏幕快照 2015-11-25 12.00.56.png


3、设置了强制保持永久长连接,您需要根据您的业务和App情况,自己执行断开连接的操作,比如根据用户长时间没有操作应该手动断开长连接节省耗电量提升用户体验。


最后,重要的事情再说一遍,如果您App不具备长时间在后台存活的权限,请使用SDK默认设计,不需要进行任何配置。

我对此仍有疑问!继续追问