createGroup method
创建群组。
群组创建成功后,会更新内存及数据库中的数据,多端多设备会收到相应的通知事件,将群组更新到内存及数据库中。 可通过设置 EMClient.addMultiDeviceEventHandler 监听相关事件,事件回调函数为 EMMultiDeviceEventHandler.onGroupEvent,第一个参数为事件,创建群组事件为 EMMultiDevicesEvent.GROUP_CREATE。
Param groupName
群组名称。
Param desc
群组描述。
Param inviteMembers
群成员数组。群主 ID 可选。
Param inviteReason
用户入群邀请信息。
Param options
群组的其他选项。请参见 EMGroupOptions。
群组的其他选项。
- 群最大成员数,默认值为 200;
- 群组类型,详见 EMGroupStyle,默认为 EMGroupStyle.PrivateOnlyOwnerInvite;
- 邀请进群是否需要对方同意,默认为 false,即邀请后直接进群;
- 群组详情扩展。
Return 创建成功的群对象。
Throws 如果有异常会在此抛出,包括错误码和错误信息,详见 EMError。
Implementation
Future<EMGroup> createGroup({
String? groupName,
String? desc,
List<String>? inviteMembers,
String? inviteReason,
required EMGroupOptions options,
}) async {
Map req = {'options': options.toJson()};
req.putIfNotNull("groupName", groupName);
req.putIfNotNull("desc", desc);
req.putIfNotNull("inviteMembers", inviteMembers);
req.putIfNotNull("inviteReason", inviteReason);
Map result = await _channel.invokeMethod(ChatMethodKeys.createGroup, req);
try {
EMError.hasErrorFromResult(result);
return EMGroup.fromJson(result[ChatMethodKeys.createGroup]);
} on EMError catch (e) {
throw e;
}
}