download

下载文件

download({params}, callback(ret, err))

params

url:

  • 类型:字符串
  • 默认值:无
  • 描述:下载地址

encode:

  • 类型:布尔
  • 默认值:true
  • 描述:(可选项)是否对url进行编码。默认或传true时,Android将始终对url编码,而iOS只有在url不合法(如存在中文字符)的时候才进行编码。如果url中有特殊字符需要编码的,建议先在js层进行编码,然后此参数传false。

savePath:

  • 类型:字符串
  • 默认值:无
  • 描述:(可选项)存储路径,不传时使用自动创建的路径

report:

  • 类型:布尔类型
  • 默认值:false
  • 描述:(可选项)下载过程是否上报

cache:

  • 类型:布尔类型
  • 默认值:true
  • 描述:(可选项)是否使用本地缓存

allowResume:

  • 类型:布尔类型
  • 默认值:false
  • 描述:(可选项)是否允许断点续传

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. fileSize:0, //文件大小,数字类型
  3. percent:0, //下载进度(0-100),数字类型
  4. state:0, //下载状态,数字类型。(0:下载中、1:下载完成、2:下载失败)
  5. savePath:'' //存储路径(字符串类型)
  6. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. msg:"" //错误描述
  3. }

示例代码

  1. api.download({
  2. url: url,
  3. savePath: 'fs://test.rar',
  4. report: true,
  5. cache: true,
  6. allowResume: true
  7. }, function(ret, err) {
  8. if (ret.state == 1) {
  9. //下载成功
  10. } else {
  11. }
  12. });

补充说明

通过返回的 state 来判断文件是否下载完成,不要通过 percent 来判断

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本