fetchJoinedGroupsFromServer method

Future<List<ChatGroup>> fetchJoinedGroupsFromServer({
  1. int pageSize = 20,
  2. int pageNum = 0,
  3. bool needMemberCount = false,
  4. bool needRole = false,
})

从服务器分页获取当前用户加入的群组。

Param pageNum 当前页码,从 0 开始,SDK 按照加入群组逆序查询。 Param pageSize 每页获取的群组数量,取值范围 1,20。 Param needMemberCount 是否需要群组成员数。 Param needRole 是否需要当前用户在群组内的角色。

Return 获取到的群组列表。

Throws 如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError.

Implementation

Future<List<ChatGroup>> fetchJoinedGroupsFromServer({
  int pageSize = 20,
  int pageNum = 0,
  bool needMemberCount = false,
  bool needRole = false,
}) async {
  try {
    Map req = {
      'pageSize': pageSize,
      'pageNum': pageNum,
      "needMemberCount": needMemberCount,
      "needRole": needRole,
    };
    Map result = await platform_interface.Client.instance.groupManager
        .callNativeMethod(ChatMethodKeys.getJoinedGroupsFromServer, req);
    ChatError.hasErrorFromResult(result);
    List<ChatGroup> list = [];
    result[ChatMethodKeys.getJoinedGroupsFromServer]
        ?.forEach((element) => list.add(ChatGroup.fromJson(element)));
    return list;
  } catch (e) {
    rethrow;
  }
}