DownloadTask qg.downloadFile(object)

下载文件资源到本地,客户端直接发起一个 HTTP GET 请求,返回文件的本地文件路径。

参数

object

属性 类型 是否必填 说明
url string 下载资源的 url
header object HTTP 请求的 Header,Header 中不能设置 Referer
filePath string 指定文件下载后存储的路径
success function 接口调用成功的回调函
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数

success 回调函数

res

属性 类型 说明
tempFilePath string 临时文件路径
statusCode number 开发者服务器返回的 HTTP 状态码
errCode string 错误码
errMsg number 错误信息

fail 回调函数

res

属性 类型 说明
errCode string 错误码
errMsg number 错误信息

代码示例:

var url = 'http://example.com/resource/w12.ttf'

var tempFilePath = qg.env.USER_DATA_PATH + '/w12.ttf'
// 下载对应字体文件
qg.downloadFile({
  url: url,
  filePath: tempFilePath,
  success(msg) {
    // 使用下载的字体,w12 代表字体类型
    var font = new FontFace('w12', "url('" + tempFilePath + "')")
    document.fonts.add(font)
    // 直接使用字体
    // txt.font = "w12";
  },
  fail(msg) {
    // 下载失败
  },
  complete() {}
})

DownloadTask

一个可以监听下载进度变化事件,以及取消下载任务的对象

DownloadTask.abort()

中断下载任务

代码示例:

var task = qg.downloadFile({
    ...
});
task.abort();

DownloadTask.onProgressUpdate(callback)

监听下载进度变化事件

参数

callback(res) 下载进度变化事件的回调函数

参数

res

属性 类型 说明
taskID string 下载任务的 id
progress number 下载进度
totalBytesWritten number 已下载的字节数
totalBytesExpectedToWrite number 总共需要下载的字节数

代码示例:s

var task = qg.downloadFile({
    ...
});
task.onProgressUpdate(function(res) {
    console.log(res.progress);
});

错误码

名称 说明
ERROR_UNKNOWN -1 未知错误
ERROR_NONE 0 无错误,成功
ERROR_FILE_NO_SUCH_FILE_OR_DIR 1 文件或目录不存在
ERROR_FILE_PERMISSION_DENIED 2 没有权限
ERROR_FILE_ALREADY_EXISTS 3 文件已存在
ERROR_FILE_NOT_A_DIR 4 不是一个目录
ERROR_FILE_NOT_A_FILE 5 不是一个文件
ERROR_FILE_STORAGE_LIMIT 6 存储大小达到上限
ERROR_FILE_DIRECTORY_NOT_EMPTY 7 目录不为空
ERROR_FILE_CREAT_DIR_FAIL 8 目录创建失败

DownloadTask.offProgressUpdate(callback)

取消监听下载进度变化事件

参数

callback() 下载进度变化事件的回调函数

© 2020 OPPO. All rights reserved.

results matching ""

    No results matching ""