更新时间: 2021-09-08

# 设置群信息

SDK 通过此方法获取群组信息并显示,请在 completionblock 中返回该群组 ID 对应的群组信息。设置了群组信息提供者之后,SDK 在需要显示群组信息的时候,会调用此方法请求群组信息用于显示。

实现此功能需要开发者遵守 RCIMGroupInfoDataSource 协议。

# 参数说明

代理对象参数说明:

参数 类型 必填 说明
groupInfoDataSource id <RCIMGroupInfoDataSource (opens new window)> 群组信息提供者

协议方法参数说明:

参数 类型 说明
groupId NSString 群组ID
completion void 获取群组信息完成之后需要执行的Block

回调参数说明:

参数 类型 必填 说明
userInfo RCGroup (opens new window) 该群组ID对应的群组信息
# 代码示例
  1. 设置代理对象:
[RCIM sharedRCIM].groupInfoDataSource = self;
已复制
1
  1. 实现协议方法:
- (void)getGroupInfoWithGroupId:(NSString *)groupId completion:(void (^)(RCGroup *))completion {
    if ([groupId length] == 0)
        return;
    //开发者调自己的服务器接口根据 userID 异步请求数据
    [RCDHTTPTOOL getGroupByID:groupId
            successCompletion:^(RCDGroupInfo *group) {
                completion(group);
            }];
}
已复制
1
2
3
4
5
6
7
8
9

# 群成员信息

SDK 通过此方法群组中的成员列表,请在 resultBlock 中返回该群组 ID 对应的群成员 ID 列表。设置了群组成员列表提供者之后,SDK 在需要获取群组成员列表的时候,会调用此方法请求群组成员用于显示。

实现此功能需要开发者遵守 RCIMGroupMemberDataSource 协议。

# 参数说明

代理对象参数说明:

参数 类型 必填 说明
groupMemberDataSource id <RCIMGroupMemberDataSource (opens new window)> 群成员信息提供者

协议方法参数说明:

参数 类型 说明
groupId NSString 群组ID
resultBlock void 获取群组信息完成之后需要执行的Block

回调参数说明:

参数 类型 必填 说明
userIdList NSArray<NSString *> 该群组ID对应的群组信息
# 代码示例
  1. 设置代理对象:
[RCIM sharedRCIM].groupMemberDataSource = self;
已复制
1
  1. 实现协议方法:
- (void)getAllMembersOfGroup:(NSString *)groupId result:(void (^)(NSArray<NSString *> *))resultBlock {
    //开发者回调自己服务器获取信息
    [RCDGroupManager getGroupMembersFromServer:groupId
                                      complete:^(NSArray<NSString *> *_Nonnull memberIdList) {
                                          if (resultBlock) {
                                              resultBlock(memberIdList);
                                          }
                                      }];
}
已复制
1
2
3
4
5
6
7
8
9

# 群名片信息

SDK 通过此方法群组中的成员列表,请在 resultBlock 中返回该群组中某个群成员具体信息。设置了群名片信息提供者之后,SDK 在需要获取群成员信息的时候,会调用此方法请求群成员信息用于显示。

实现此功能需要开发者遵守 RCIMGroupUserInfoDataSource 协议。

# 参数说明

代理对象参数说明:

参数 类型 必填 说明
groupUserInfoDataSource id <RCIMGroupUserInfoDataSource (opens new window)> 群成员信息提供者

协议方法参数说明:

参数 类型 说明
userId NSString 用户ID
groupId NSString 群组ID
completion block 获取群成员信息完成之后需要执行的Block

回调参数说明:

参数 类型 必填 说明
userInfo RCUserInfo 该群组ID对应的群组信息
# 代码示例
  1. 设置代理对象:
[RCIM sharedRCIM].groupUserInfoDataSource = self;
已复制
1
  1. 实现协议方法:
- (void)getUserInfoWithUserId:(NSString *)userId
                      inGroup:(NSString *)groupId
                   completion:(void (^)(RCUserInfo *userInfo))completion {
    //开发者回调自己服务器获取信息
    [RCDGroupManager getGroupMemberDetailInfoFromServer:userId
                                                    groupId:groupId
                                                   complete:^(RCUserInfo *userInfo) {
                                                     return completion(userInfo);
                                                   }];
}
已复制
1
2
3
4
5
6
7
8
9
10

文档是否解决您的问题 ?

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