feat: Add the log upload function of SDK.

This commit is contained in:
Brett
2023-12-13 16:28:25 +08:00
parent 92dd3adad5
commit 2e94254192
6 changed files with 93 additions and 1 deletions

View File

@@ -15,4 +15,5 @@ class ListenerType {
static const messageKvInfoListener = "messageKvInfoListener";
static const listenerForService = "listenerForService";
static const uploadFileListener = "uploadFileListener";
static const uploadLogsListener = "uploadLogsListener";
}

View File

@@ -1,3 +1,12 @@
class OnUploadLogsListener {
Function(int current, int size)? onUploadProgress;
OnUploadLogsListener({this.onUploadProgress});
void onProgress(int current, int size) {
onUploadProgress?.call(current, size);
}
}
class OnUploadFileListener {
Function(String id, int size, String url, int type)? onComplete;
Function(String id, String partHash, String fileHash)? onHashPartComplete;

View File

@@ -16,6 +16,8 @@ class IMManager {
late OnConnectListener _connectListener;
OnListenerForService? _listenerForService;
OnUploadFileListener? _uploadFileListener;
OnUploadLogsListener? _uploadLogsListener;
late String userID;
late UserInfo userInfo;
bool isLogined = false;
@@ -273,6 +275,15 @@ class IMManager {
_listenerForService?.recvNewMessage(msg);
break;
}
} else if (call.method == ListenerType.uploadLogsListener) {
String type = call.arguments['type'];
dynamic data = call.arguments['data'];
switch (type) {
case 'onProgress':
int size = data['size'];
int current = data['current'];
_uploadLogsListener?.onProgress(current, size);
}
} else if (call.method == ListenerType.uploadFileListener) {
String type = call.arguments['type'];
dynamic data = call.arguments['data'];
@@ -511,6 +522,21 @@ class IMManager {
'operationID': Utils.checkOperationID(operationID),
}));
/// 上传日志
/// [uploadlogParams] system_type、ex
Future uploadLogs({
String? operationID,
}) =>
_channel.invokeMethod(
'uploadLogs',
_buildParam({
'operationID': Utils.checkOperationID(operationID),
}));
void setUploadLogsListener(OnUploadLogsListener listener) {
_uploadLogsListener = listener;
}
void setUploadFileListener(OnUploadFileListener listener) {
_uploadFileListener = listener;
}