本文档适用于开发以下平台的应用:iOS、Android、macOS、Windows、Web。
ZIM SDK 提供了群资料管理功能,支持用户查询/修改群资料,比如群名、群昵称、群头像、群公告等基本群信息。
在实现“群资料管理”功能之前,请确保:
用户登录、并加入某个群组后,如果想要了解自己加入群组的相关资料,可以通过调用 queryGroupInfo 接口,查询群资料。
查询成功后,用户可以通过 ZIMGroupInfoQueriedResult 类型的异步返回值,收到查询结果。
Future<ZIMGroupInfoQueriedResult> queryGroupInfo(String groupID);
参数 | 类型 | 是否必填 | 说明 |
---|---|---|---|
groupID | String | 是 | 查询群资料的群组 ID。 |
// 群内成员 查询群资料,例如,群名、群昵称、群公告等
ZIM.getInstance()
!.queryGroupInfo('groupID')
.then((value) => {
//成功触发此处
})
.catchError((onError) {
//失败触发此处
});
用户登录、并加入某个群组后,如果想要修改自己加入群组的群名,可以通过调用 updateGroupName 接口,修改群组名称;修改成功后,全体群成员都可以通过 onGroupNameUpdated 收到通知。 修改成功后,用户可以通过 ZIMGroupNameUpdatedResult 类型的异步返回值,收到修改群名操作的结果。
Future<ZIMGroupNameUpdatedResult> updateGroupName(
String groupName, String groupID);
参数 | 类型 | 是否必填 | 说明 |
---|---|---|---|
groupName | String | 是 | 修改后的群组名称。 |
groupID | String | 是 | 修改群名的群组 ID。 |
// 群内成员 修改群名
// groupName 最大 64 字节的字符串,无特殊字符限制。
ZIM.getInstance()
!.updateGroupName('groupName', 'groupID')
.then((value) => {
//成功触发此处
})
.catchError((onError) {
//失败触发此处
});
用户登录、并加入某个群组后,如果想要修改自己加入群组的群头像,可以通过调用 updateGroupAvatarUrl 接口,修改群组头像。
修改成功后,全体群成员都可以通过 ZIMGroupAvatarUrlUpdatedCallback 收到通知。
Future<ZIMGroupAvatarUrlUpdatedResult> updateGroupAvatarUrl(
String groupAvatarUrl, String groupID);
参数 | 类型 | 是否必填 | 说明 |
---|---|---|---|
groupAvatarUrl | NSString | 是 | 修改后的群组头像 URL。 |
groupID | NSString | 是 | 修改群头像的群组 ID。 |
callback | ZIMGroupAvatarUrlUpdatedCallback | 是 | 修改群头像操作的结果回调通知。 |
// 群内成员 修改群头像
// groupAvatarUrl 最大 500 字节的字符串,无特殊字符限制。
ZIM.getInstance()
!.updateGroupAvatarUrl('groupAvatarUrl', 'groupID')
.then((value) => {
//成功触发此处
})
.catchError((onError) {
//失败触发此处
});
用户登录、并加入某个群组后,如果想要修改自己加入群组的群公告,可以通过调用 updateGroupNotice 接口,修改群组公告;修改成功后,全体群成员都可以通过 onGroupNoticeUpdated 收到通知。
修改成功后,用户可以通过 ZIMGroupNoticeUpdatedResult 类型的异步返回值,收到修改群组公告操作的结果。
Future<ZIMGroupNoticeUpdatedResult> updateGroupNotice(String groupNotice, String groupID);
参数 | 类型 | 是否必填 | 说明 |
---|---|---|---|
groupNotice | String | 是 | 修改后的群组公告内容。 |
groupID | String | 是 | 修改群名的群组 ID。 |
// 群内成员 修改群公告
ZIM.getInstance()
!.updateGroupNotice('groupNotice', 'groupID')
.then((value) => {
//成功触发此处
})
.catchError((onError) {
//失败触发此处
});
群备注,是用户为群聊设置个性化的备注名称,以便于区分不同的群聊。例如,可以将工作群备注为“工作群”,家庭群备注为“家庭群”,这样在识别群聊时会更加方便。
群备注仅用户自己可见,不会影响其他群聊成员的群名称显示。
用户登录、并加入某个群组后,如果想要修改群组的群备注,可以通过调用 updateGroupAlias 接口,修改群组备注,群备注仅该用户自身可见,且对应会话的备注也会自动同步。
// 修改备注
// groupAlias 最大 256 字节的字符串,无特殊字符限制。
String groupAlias = 'newAlias';
String groupId = 'groupID';
try{
ZIMGroupAliasUpdatedResult? result = await ZIM.getInstance()?.updateGroupAlias(groupAlias, groupId);
} on PlatformException catch (onError){
onError.code; // 修改群备注失败,失败错误码
onError.message; // 修改群备注的错误信息
}
修改成功后,该用户的所有端都可以通过 onGroupAliasUpdated 收到通知。
// 监听群备注修改通知
ZIMEventHandler.onGroupAliasUpdated = (ZIM zim, String groupAlias, String operatedUserID, String groupID){
// 业务逻辑
};
此外,该用户还会收到 onConversationChanged 回调,得知 conversationAlias
(会话别名)更新,详情请参考 获取会话列表 - 监听会话变更。
联系我们
文档反馈