callAPI static method
Implementation
static Future<TUIValueCallBack<String>> callAPI(String apiName, String jsonParam) {
String userData = Tools.generateRoomUserData();
Completer<TUIValueCallBack<String>> completer = Completer();
_valueCallback2Future<String>(userData, completer);
final syncResult = _engineSDK.Dart_CallAPI(_engineFFIPointer, Tools.string2PointerChar(apiName),
Tools.string2PointerChar(jsonParam), Tools.string2PointerChar(userData));
final result = Tools.pointerChar2String(syncResult);
calloc.free(syncResult);
if ("isAsyncAPI" == result) {
return completer.future;
}
_valueCallbackMap.remove(userData);
return Future.value(TUIValueCallBack(code: TUIError.success, message: '', data: jsonEncode([result])));
}