该应用是作为一个App的子程序,因为App 本身集成了 VPN 功能的环境,所以程序不能直接用window.open借助手机浏览器下载顺便打开。 只能在app里访问链接,所以想用用uni.download、uni.saveFile、uni.openDocument 下载文件然后打开。但是就卡再来打开文件这一步。在应用沙盒目录里存在下载的文件,但是调用uni.openDocument这一步没有任何反应,success、fail、complete都没有信息弹出。 只用考虑安卓手机,手机已经下载了wps软件。
// 预览其他文件
openDocument: (url) => {
uni.showLoading({
title: '文件下载中...',
mask: true
})
uni.downloadFile({
url: url,
success: function (res) {
uni.hideLoading()
var filePath = res.tempFilePath
uni.openDocument({
filePath: filePath,
success: (res) => {
console.log('打开文档成功')
uni.showToast({
title: '打开文档成功' + JSON.stringify(res),
icon: 'none'
})
},
fail: (err) => {
console.log('打开文件失败')
uni.showToast({
icon: 'none',
mask: true,
title: '打开文件失败' +err
})
},
complete:(all)=>{
uni.showToast({
icon: 'none',
mask: true,
title: 'weism1' + JSON.stringify(all),
duration: 1000
})
}
})
}
})
},
考虑到可能是安卓10以上有分区存储机制,后面更改下载文件到手机公共目录里,传入地址 '/storage/emulated/0/Download/sample.pdf'或者‘file://storage/emulated/0/Download/sample.pdf' 用uni.openDocment还是没有任何反应。
0 个回复