searchCloudGroups method
Future<V2TimValueCallback<V2TimGroupSearchResult> >
searchCloudGroups({
- required V2TimGroupSearchParam searchParam,
Implementation
Future<V2TimValueCallback<V2TimGroupSearchResult>> searchCloudGroups({
required V2TimGroupSearchParam searchParam,
}) async {
if (!TIMManager.instance.isInitSDK()) {
return V2TimValueCallback<V2TimGroupSearchResult>(code: TIMErrCode.ERR_SDK_NOT_INITIALIZED.value, desc: "sdk not init");
}
String userData = Tools.generateUserData('searchCloudGroups');
Completer<V2TimValueCallback<V2TimGroupSearchResult>> completer = Completer();
// 打断点测试
void handleApiCallback(Map jsonResult) {
V2TimValueCallback<V2TimGroupSearchResult> result = V2TimValueCallback<V2TimGroupSearchResult>.fromJson(jsonResult);
completer.complete(result);
}
NativeLibraryManager.timApiValueCallback2Future(userData, handleApiCallback);
// NativeLibraryManager.timValueCallback2Future<V2TimGroupSearchResult>(userData, completer);
Pointer<Char> pParam = Tools.string2PointerChar(json.encode(searchParam.toJson()));
Pointer<Void> pUserData = Tools.string2PointerVoid(userData);
int result = NativeLibraryManager.bindings.DartSearchCloudGroups(pParam, pUserData);
if (result != TIMResult.TIM_SUCC.value) {
return V2TimValueCallback<V2TimGroupSearchResult>(code: TIMErrCode.ERR_INVALID_PARAMETERS.value, desc: "invalid parameter");
}
return completer.future;
}