load method
void
load()
Implementation
void load() async {
AmpsSdk.channel.setMethodCallHandler(
(call) async {
switch (call.method) {
case AMPSNativeCallBackChannelMethod.loadOk:
final List<String>? receivedList = call.arguments?.cast<String>();
if (receivedList != null) {
mCallBack?.loadOk?.call(receivedList);
}
break;
case AMPSNativeCallBackChannelMethod.loadFail:
var map = call.arguments as Map<dynamic, dynamic>;
mCallBack?.loadFail?.call(map[AMPSSdkCallBackErrorKey.code],
map[AMPSSdkCallBackErrorKey.message]);
break;
case AMPSNativeCallBackChannelMethod.renderSuccess:
mRenderCallBack?.renderSuccess?.call(call.arguments);
break;
case AMPSNativeCallBackChannelMethod.renderFailed:
var map = call.arguments as Map<dynamic, dynamic>;
mRenderCallBack?.renderFailed?.call(
map[AMPSSdkCallBackErrorKey.adId],
map[AMPSSdkCallBackErrorKey.code],
map[AMPSSdkCallBackErrorKey.message]);
break;
case AMPSNativeCallBackChannelMethod.onAdShow:
mInteractiveCallBack?.onAdShow?.call(call.arguments);
break;
case AMPSNativeCallBackChannelMethod.onAdExposure:
mInteractiveCallBack?.onAdExposure?.call(call.arguments);
break;
case AMPSNativeCallBackChannelMethod.onAdClicked:
mInteractiveCallBack?.onAdClicked?.call(call.arguments);
break;
case AMPSNativeCallBackChannelMethod.onAdClosed:
mCloseWidgetCall?.call();
mInteractiveCallBack?.toCloseAd?.call(call.arguments);
break;
case AMPSNativeCallBackChannelMethod.onVideoInit:
mVideoPlayerCallBack?.onVideoInit?.call(call.arguments);
break;
case AMPSNativeCallBackChannelMethod.onVideoLoading:
mVideoPlayerCallBack?.onVideoLoading?.call(call.arguments);
break;
case AMPSNativeCallBackChannelMethod.onVideoReady:
mVideoPlayerCallBack?.onVideoReady?.call(call.arguments);
break;
case AMPSNativeCallBackChannelMethod.onVideoLoaded:
mVideoPlayerCallBack?.onVideoLoaded?.call(call.arguments);
break;
case AMPSNativeCallBackChannelMethod.onVideoPlayStart:
mVideoPlayerCallBack?.onVideoPlayStart?.call(call.arguments);
break;
case AMPSNativeCallBackChannelMethod.onVideoPlayComplete:
mVideoPlayerCallBack?.onVideoPlayComplete?.call(call.arguments);
break;
case AMPSNativeCallBackChannelMethod.onVideoPause:
mVideoPlayerCallBack?.onVideoPause?.call(call.arguments);
break;
case AMPSNativeCallBackChannelMethod.onVideoResume:
mVideoPlayerCallBack?.onVideoResume?.call(call.arguments);
break;
case AMPSNativeCallBackChannelMethod.onVideoStop:
mVideoPlayerCallBack?.onVideoStop?.call(call.arguments);
break;
case AMPSNativeCallBackChannelMethod.onVideoClicked:
mVideoPlayerCallBack?.onVideoClicked?.call(call.arguments);
break;
case AMPSNativeCallBackChannelMethod.onVideoPlayError:
var map = call.arguments as Map<dynamic, dynamic>;
mVideoPlayerCallBack?.onVideoPlayError?.call(
map[AMPSSdkCallBackErrorKey.adId],
map[AMPSSdkCallBackErrorKey.code],
map[AMPSSdkCallBackErrorKey.extra]);
break;
case DownLoadCallBackChannelMethod.onInstalled:
var adId = call.arguments as String;
mDownloadListener?.onInstalled?.call(adId);
break;
case DownLoadCallBackChannelMethod.onDownloadFailed:
var adId = call.arguments as String;
mDownloadListener?.onDownloadFailed?.call(adId);
break;
case DownLoadCallBackChannelMethod.onDownloadStarted:
var adId = call.arguments as String;
mDownloadListener?.onDownloadStarted?.call(adId);
break;
case DownLoadCallBackChannelMethod.onDownloadFinished:
var adId = call.arguments as String;
mDownloadListener?.onDownloadFinished?.call(adId);
break;
case DownLoadCallBackChannelMethod.onDownloadProgressUpdate:
var argMap = call.arguments as Map<dynamic, dynamic>;
var position = argMap["position"] ?? 0;
var adId = argMap["adId"] ?? "";
mDownloadListener?.onDownloadProgressUpdate?.call(position, adId);
break;
case DownLoadCallBackChannelMethod.onDownloadPaused:
var argMap = call.arguments as Map<dynamic, dynamic>;
var position = argMap["position"] ?? 0;
var adId = argMap["adId"] ?? "";
mDownloadListener?.onDownloadPaused?.call(position, adId);
break;
}
},
);
AmpsSdk.channel.invokeMethod(
AMPSAdSdkMethodNames.nativeLoad,
config.toMap(nativeType: nativeType),
);
}