onPreDownloadEvent method
Implementation
@override
void onPreDownloadEvent(Map<String, Object> event) {
LogUtils.d(TAG, 'onPreDownloadEvent _eventHandler, event= $event');
final Map<dynamic, dynamic> map = event;
int eventCode = map["event"];
switch (eventCode) {
case TXVodPlayEvent.EVENT_PREDOWNLOAD_ON_COMPLETE:
int taskId = map['taskId'];
String url = map['url'];
LogUtils.d(TAG, 'receive EVENT_PREDOWNLOAD_ON_COMPLETE, taskID=$taskId ,url=$url');
_preloadListeners[taskId]?.onCompleteListener?.call(taskId, url);
_preloadListeners.remove(taskId);
break;
case TXVodPlayEvent.EVENT_PREDOWNLOAD_ON_ERROR:
int tmpTaskId = map['tmpTaskId'] ?? -1;
int taskId = map['taskId'];
String url = map['url'];
int code = map['code'] ?? 0;
String msg = map['msg'] ?? '';
LogUtils.d(TAG, 'receive EVENT_PREDOWNLOAD_ON_ERROR, taskID=$taskId ,url=$url, code=$code , msg=$msg');
if (tmpTaskId >= 0) {
_fileIdBeforeStartListeners[tmpTaskId]!.onErrorListener?.call(taskId, url, code, msg);
_fileIdBeforeStartListeners.remove(tmpTaskId);
} else {
_preloadListeners[taskId]?.onErrorListener?.call(taskId, url, code, msg);
_preloadListeners.remove(taskId);
}
break;
case TXVodPlayEvent.EVENT_PREDOWNLOAD_ON_START:
int tmpTaskId = map['tmpTaskId'];
int taskId = map['taskId'];
String fileId = map['fileId'] ?? '';
String url = map['url'] ?? '';
Map<dynamic, dynamic> bundle = map['params'] ?? {};
LogUtils.d(TAG, 'receive EVENT_PREDOWNLOAD_ON_START, tmpTaskId=$tmpTaskId, '
'taskID=$taskId ,fileId=$fileId, url=$url , bundle=$bundle');
if (_fileIdBeforeStartListeners[tmpTaskId] != null) {
_preloadListeners[taskId] = _fileIdBeforeStartListeners[tmpTaskId]!;
_preloadListeners[taskId]!.onStartListener?.call(taskId, fileId, url, bundle);
_fileIdBeforeStartListeners.remove(tmpTaskId);
}
break;
default:
break;
}
}