init static method

Future<void> init(
  1. AMPSInitConfig sdkConfig,
  2. AMPSIInitCallBack callBack
)

发送数据给native

Implementation

static Future<void> init(AMPSInitConfig sdkConfig,AMPSIInitCallBack callBack) async {
  AdscopeSdk.removeMethodCallHandler(_initHandlerKey);
  AdscopeSdk.addMethodCallHandler(_initHandlerKey,
        (call) async {
      switch (call.method) {
        case AMPSInitChannelMethod.initSuccess:
          callBack.initSuccess?.call();
          break;
        case AMPSInitChannelMethod.initializing:
          callBack.initializing?.call();
          break;
        case AMPSInitChannelMethod.alreadyInit:
          callBack.alreadyInit?.call();
          break;
        case AMPSInitChannelMethod.initFailed:
          final map = call.arguments as Map<dynamic, dynamic>?;
          final code = map?[AMPSSdkCallBackErrorKey.code];
          final message = map?[AMPSSdkCallBackErrorKey.message];
          callBack.initFailed?.call(code, message);
          break;
      }
    }
  );
  // 使用时
  await AdscopeSdk.invokeMethod(
    AMPSAdSdkMethodNames.init,
    sdkConfig.toMap(AMPSAdSDK.testModel),
  );
}