全部文档

( 最近更新时间:2020-04-28 19:00:00 )

# 设置状态监听

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

# 参数说明
参数 类型 必填 说明
delegate id IMLib 连接状态监听器
参数 类型 说明
status RCConnectionStatus (opens new window) SDK 与融云服务器的连接状态
# 代码示例
  1. 设置代理对象:
[[RCIMClient sharedRCIMClient] setRCConnectionStatusChangeDelegate:self];
已复制
1
  1. 实现协议方法:
- (void)onConnectionStatusChanged:(RCConnectionStatus)status {
    
}
已复制
1
2
3

# 设置消息监听

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

# 参数说明

代理对象参数说明:

传入参数 类型 必填 说明
delegate id IMLib 消息接收监听器
userData id 用户自定义的监听器 Key 值,可以为 nil

协议方法参数说明:

参数 类型 说明
message RCMessage (opens new window) 当前接收到的消息
nLeft int 还剩余的未接收的消息数
object id 消息监听设置的 key 值
offline BOOL 是否是离线消息
hasPackage BOOL SDK 拉取服务器的消息以包( package )的形式批量拉取,有 package 存在就意味着远端服务器还有消息尚未被 SDK 拉取
# 代码示例
  1. 设置代理对象:
[[RCIMClient sharedRCIMClient] setReceiveMessageDelegate:self object:nil];
已复制
1
  1. 实现协议方法:
- (void)onReceived:(RCMessage *)message left:(int)nLeft object:(id)object offline:(BOOL)offline hasPackage:(BOOL)hasPackage {
    
}
已复制
1
2
3

文档是否解决您的问题 ?

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