全部文档

更新时间: 2021-03-08

# 设置状态监听

当 SDK 与融云服务器的连接状态发生变化时,开发者可通过下面方法进行处理。实现此功能需要开发者遵守 RCIMConnectionStatusDelegate 协议。

# 参数说明

代理对象参数说明:

参数 类型 必填 说明
connectionStatusDelegate id <RCIMConnectionStatusDelegate (opens new window)> 连接状态的监听器

协议方法参数说明:

参数 类型 说明
status RCConnectionStatus (opens new window) SDK 与融云服务器的连接状态
# 代码示例
  1. 设置代理对象:
[RCIM sharedRCIM].connectionStatusDelegate = self;
已复制
1
  1. 实现协议方法:
- (void)onRCIMConnectionStatusChanged:(RCConnectionStatus)status{

}
已复制
1
2
3

# 设置消息监听

当 SDK 在接收到消息时,开发者可通过下面方法进行处理。 SDK 会通过此方法接收包含 单聊、群聊、聊天室、系统 类型的所有消息,开发者只需全局设置一次即可,多次设置会导致其他代理失效。实现此功能需要开发者遵守 RCIMReceiveMessageDelegate 协议。

# 参数说明

代理对象参数说明:

参数 类型 必填 说明
receiveMessageDelegate id <RCIMReceiveMessageDelegate (opens new window)> 消息接收的监听器

协议方法参数说明:

参数 类型 说明
message RCMessage (opens new window) 当前接收到的消息
left int 还剩余的未接收的消息数
# 代码示例
  1. 设置代理对象:
[RCIM sharedRCIM].receiveMessageDelegate = self;
已复制
1
  1. 实现协议方法:
- (void)onRCIMReceiveMessage:(RCMessage *)message left:(int)left {

}
已复制
1
2
3

通过此方法可以获取到每条消息,left 会依次递减直到 0。开发者可以根据 left 数量来优化 App 体验和性能,比如收到大量消息时等待 left 为 0 再刷新 UI。

文档是否解决您的问题 ?

如果遇到产品相关问题,您可 提交工单 寻求帮助