ios端保存文件并预览
Download(item){
let system = uni.getSystemInfoSync().platform;
if (system == 'ios') {
uni.downloadFile({
url: item.fileLink,//下载地址接口返回
success: (data) => {
if (data.statusCode === 200) {
//文件保存到本地
uni.saveFile({
tempFilePath: data.tempFilePath, //临时路径
success: function(res) {
uni.showToast({
icon: 'none',
mask: true,
title: '文件已保存:' + res.savedFilePath, //保存路径
duration: 2000,
});
setTimeout(()=>{
let filePath = res.savedFilePath
filePath = encodeURI(filePath);
//打开文档查看
uni.openDocument({
filePath,
success: function(res) {
console.log('打开文档成功');
},
fail: res1 => {
uni.getImageInfo({
src: filePath,
success: imgInfo => {
uni.previewImage({
current: filePath,
urls: [filePath]
});
},
fail: err => {
uni.showToast({
title: '不支持该格式',
icon: 'none'
});
return;
}
});
}
});
},2000)
}
});
}
},
fail: (err) => {
console.log(err);
uni.showToast({
icon: 'none',
mask: true,
title: '失败请重新下载',
});
},
});
}
安卓端保存并预览
let url = item.fileLink
let dtask = plus.downloader.createDownload(url,
{
filename: "file://storage/emulated/0/附件/" + item.fileName //利用保存路径,实现下载
文件的重命名
},
function(d, status) {
//d为下载的文件对象
if (status == 200) {
//下载成功,d.filename是文件在保存在本地的相对路径,使用下面的API可转为平台绝对路径
let fileSaveUrl = plus.io.convertLocalFileSystemURL(d.filename);
plus.runtime.openFile(d.filename); //选择软件打开文件
} else {
//下载失败
plus.downloader.clear(); //清除下载任务
}
})
dtask.start();
参考 https://blog.csdn.net/weixin_44692055/article/details/120031862