通过QQ小程序自带的qq.cloud.downloadFile可将文件从云端下载,并保存至一个临时目录。这时如果我想把文件保存到手机本地怎么办呢?
第一个想法是通过QQ小程序自带的qq.saveFile这个API,但是经过尝试后发现,这个保存的文件只有在小程序内部才能查看,而在手机的内部存储中找不到这个文件。
所以才有了下面这个比较麻烦的方法,但是可以保存至手机本地。
思路:先将文件转化为图片,再把图片保存至系统相册,最后在手机存储中找到该图片再转化为原文件即可。
(假设下载的是PDF文件)
qq.cloud.downloadFile({
fileID:'填入待下载文件的fileID'
})
.then((res)=>{
console.log(res.tempFilePath)
const savePath = qq.env.USER_DATA_PATH + '/123.pdf.jpg'
qq.getFileSystemManager().saveFile({
tempFilePath: res.tempFilePath,
filePath: savePath,
success(res) {
console.log('save ->', res)
qq.saveImageToPhotosAlbum({
filePath: savePath,
success: (res) => {
qq.showModal({
title: '文件已保存到手机相册',
content: '可在相册中查看文件详细位置,找到文件后将保存的文件后缀名改为[.pdf]即可',
confirmColor: '#0bc183',
confirmText: '知道了',
showCancel: false
})
}
})
},
fail(){
console.log("下载失败")
}
})
})
更多推荐
QQ小程序下载文件到本地
发布评论