浏览 SDKs · iOS
SDKsiOS

群组概览

了解 iOS SDK 中群资料、群成员、群申请、角色和群组事件的关系。

复制

OpenIMSDK 的多人聊天使用群组承载共享资料、成员关系和权限。groupID 是群组稳定标识,发送群消息、读取群资料、管理成员和处理入群申请都使用它。聊天列表中的群会话仍由 conversationID 管理,两者不能混用。

核心数据类型

类型用途
OIMGroupInfo群名称、头像、公告、群主、验证配置、成员数和扩展字段。
OIMGroupMemberInfo用户在指定群内的昵称、角色、禁言和入群信息。
OIMGroupApplicationInfo入群申请及处理状态。

群角色使用 OIMGroupMemberRole:普通成员为 OIMGroupMemberRoleMember(20),管理员为 OIMGroupMemberRoleAdmin(60),群主为 OIMGroupMemberRoleOwner(100)。前端可以据此控制入口,但最终权限由 OpenIMServer 校验。

群资料和生命周期

群成员和申请

群组管控

状态更新

本页是群资料、当前用户加入或退出以及群组解散事件的完整归属页:

- (void)startGroupEvents { [[OIMManager callbacker] addGroupListener:self]; }
- (void)stopGroupEvents { [[OIMManager callbacker] removeGroupListener:self]; }

- (void)onJoinedGroupAdded:(OIMGroupInfo *)group { [self upsertGroup:group]; }
- (void)onJoinedGroupDeleted:(OIMGroupInfo *)group { [self removeGroupID:group.groupID]; }
- (void)onGroupInfoChanged:(OIMGroupInfo *)group { [self upsertGroup:group]; }
- (void)onGroupDismissed:(OIMGroupInfo *)group { [self markDismissed:group.groupID]; }

应用应强引用稳定的 OIMGroupListener 对象,并使用同一实例添加和移除。事件按 groupID 幂等合并;成功 callback、delegate 增量和重新查询校准应分别处理。

成员事件归属查询群成员概览,申请事件归属入群申请概览

OpenIM iOS SDK 的群组 API 只处理 OpenIMSDK 群资料、成员关系和权限。公开发现、复杂目录和大规模群聊的容量治理属于业务后端与 OpenIMServer 配置,不应扩写成不存在的客户端群组类型。