callNatives method

void callNatives(
  1. String moduleName,
  2. String moduleFunc,
  3. String callId,
  4. Uint8List paramsList,
  5. bool bridgeParseJson,
)

Implementation

void callNatives(
  String moduleName,
  String moduleFunc,
  String callId,
  Uint8List paramsList,
  bool bridgeParseJson,
) {
  LogUtils.dBridge('call native ($moduleName.$moduleFunc)');

  if (_isFrameWorkInit) {
    var paramsArray = VoltronArray();

    if (bridgeParseJson) {
      var strParam = utf8.decode(paramsList);
      if (!isEmpty(strParam)) {
        paramsArray = strParam.decodeType<VoltronArray>() ?? VoltronArray();
      }
    } else {
      paramsArray = paramsList.decodeType<VoltronArray>() ?? VoltronArray();
    }

    LogUtils.dBridge(
      "call native ($moduleName.$moduleFunc), params($paramsArray)",
    );
    _context.moduleManager.callNatives(
      CallNativeParams.obtain(moduleName, moduleFunc, callId, paramsArray),
    );
  }
}