{IDO文件传输接口说明}

1.功能概述

提供传输单个/多个文件的能力,文件包括(固件包,图库包,字库包,语言包,BT升级包,表盘,通讯录,AGPS,GPS,消息图标,运动图标,EPO升级包,提示音文件,血压校准文件)。 提供获取文件传输进度,传输状态,当前文件传输类型能力。

2.接口能力

1.查询传输状态:

1.1 功能概括:

1.2 API ID:

bool get isTransmitting;

1.3 API参数说明:

@Param:isTransmitting 传输标志,false:空闲,true:传输中

2.查询当前传输中的文件类型:

2.1 功能概括:

2.2 API ID:

FileTransType? get transFileType;

2.3 API参数说明:

@Param:transFileType 文件类型

////TODO

3.监听当前上传的文件类型:

3.1 功能概括:

监听方法,文件开始传输、传输完成及失败都会回调此处。

3.2 API ID:

StreamSubscription listenTransFileTypeChanged(void Function(FileTransType? fileType) func);

3.3 API参数说明:

@Param:fileType 正在上传的文件类型,null表示无文件在上传。

////TODO

4.传输单个文件:

4.1 功能概括:

提供传输文件、获取文件传输状态、获取传输进度、获取传输错误码及取消传输单个文件的能力。

4.2 API ID:

Stream<bool> transferSingle(
  {required BaseFileModel fileItem,
   required CallbackFileTransStatusSingle funcStatus,
   required CallbackFileTransProgressSingle funcProgress,
   CallbackFileTransErrorCode? funError,
   bool cancelPrevTranTask});

4.3 API参数说明:

4.3.1 @Param:fileItem 文件配置信息,包括:
class BaseFileModel{
final FileTransType fileType;          /// 文件类型
final String filePath;                 /// 文件绝对地址
final String fileName;                 /// 文件名
int? fileSize;                         /// 文件大小
int? originalFileSize;                 /// 原始文件大小(压缩前),暂时只用于表盘
}
4.3.2 @Param:funcStatus 传输的状态,包括:
typedef CallbackFileTransStatusSingle = void Function(FileTransStatus status);

enum FileTransStatus {
  none                = 0,
  invalid             = 1,              /// 无效类型
  notExists           = 2,              /// 文件不存在
  busy                = 3,              /// 存在传输任务
  config              = 4,              /// 配置
  beforeOpt           = 5,              /// 传输前操作
  trans               = 6,              /// 传输中
  finished            = 7,              /// 传输完成
  onFastSynchronizing = 8,              /// 快速配置中,不支持文件传输
  error               = 9,              /// 传输失败
}
4.3.3 @Param:funcProgress 传输进度。
4.3.4 @Param:funError 传输错误码,包括:
typedef CallbackFileTransErrorCode = void Function(
    int index, int errorCode, int errorCodeFromDevice, int finishingTime);

@Param:index 当前传输的文件索引。
@Param:errorCode C库返回的错误码。
@Param:errorCodeFromDevice 固件返回的错误码,当errorCode是2425,该值等于errorCode。
@Param:finishingTime 固件预计整理时长,当errorCode是2425的时候,才会返回值,其它情况都是0
4.3.5 @Param:cancelPrevTranTask 取消存在的上传任务 默认为false。

5.传输多个文件:

5.1 功能概括:

提供传输多个文件、获取文件传输状态、获取传输进度、获取传输错误码及取消传输单个文件的能力。

5.2 API ID:

Stream<List<bool>> transferMultiple(
  {required List<BaseFileModel> fileItems,
   required CallbackFileTransStatusMultiple funcStatus,
   required CallbackFileTransProgressMultiple funcProgress,
   CallbackFileTransErrorCode? funError,
   bool cancelPrevTranTask});

5.3 API参数说明:

5.3.1 @Param:fileItem 文件配置信息,包括:
class BaseFileModel{
final FileTransType fileType;          /// 文件类型
final String filePath;                 /// 文件绝对地址
final String fileName;                 /// 文件名
int? fileSize;                         /// 文件大小
int? originalFileSize;                 /// 原始文件大小(压缩前),暂时只用于表盘
}
5.3.2 @Param:funcStatus 传输的状态,包括:
typedef CallbackFileTransStatusMultiple = void Function(int index, FileTransStatus status);

enum FileTransStatus {
  none                = 0,
  invalid             = 1,              /// 无效类型
  notExists           = 2,              /// 文件不存在
  busy                = 3,              /// 存在传输任务
  config              = 4,              /// 配置
  beforeOpt           = 5,              /// 传输前操作
  trans               = 6,              /// 传输中
  finished            = 7,              /// 传输完成
  onFastSynchronizing = 8,              /// 快速配置中,不支持文件传输
  error               = 9,              /// 传输失败
}
5.3.3 @Param:funcProgress 传输进度,包括:
typedef CallbackFileTransProgressMultiple = void Function(int currentIndex,
    int totalCount, double currentProgress, double totalProgress);

@Param:currentIndex 当前传输的文件索引(0 ~ totalCount-1@Param:totalCount 要传的文件数(>= 1)。
@Param:currentProgress 当前文件传输进度(0 ~ 1.0)
@Param:totalProgress 总进度(0 ~ 1.0)
5.3.4 @Param:funError 传输错误码,包括:
typedef CallbackFileTransErrorCode = void Function(
    int index, int errorCode, int errorCodeFromDevice, int finishingTime);

@Param:index 当前传输的文件索引。
@Param:errorCode C库返回的错误码。
@Param:errorCodeFromDevice 固件返回的错误码,当errorCode是2425,该值等于errorCode。
@Param:finishingTime 固件预计整理时长,当errorCode是2425的时候,才会返回值,其它情况都是0
5.3.5 @Param:cancelPrevTranTask 取消存在的上传任务 默认为false。
Copyright © 2023-2024 IDO. All rights reserved. all right reserved,powered by Gitbook修订时间: 2026-04-07 16:03:39

results matching ""

    No results matching ""