uniapp 下載文件到指定目錄中及重新命名
uniapp 下載前需要開啟app 應(yīng)用讀取權(quán)限
開啟方式
手動(dòng)開啟
uniapp 權(quán)限中添加讀取權(quán)限
添加一下代碼即可
//var data={mid='123456',title:'文件名稱' } xiazhai(data, index) { var downFileName = data.title + '.mp3'; var filePath = "file://storage/emulated/0/Vpi視頻/" + downFileName; // 檢查文件是否已存在 plus.io.resolveLocalFileSystemURL(filePath, function(entry) { // 文件已存在,不進(jìn)行下載 uni.showToast({ icon: 'none', mask: true, title: '文件已存在,無需重復(fù)下載', duration: 2000 }); }, function() { uni.showLoading({ title: '正在下載' }); var downFileName = data.title + '.mp3'; var url = 'http://music.163.com/song/media/outer/url?id=' + data.mid + '.mp3'; let dtask = plus.downloader.createDownload(url, { filename: "file://storage/emulated/0/Vpi視頻/" + downFileName //利用保存路徑,實(shí)現(xiàn)下載文件的重命名 }, (d, status) => { //d為下載的文件對(duì)象 if (status == 200) { uni.hideLoading(); uni.showToast({ icon: 'none', mask: true, title: '已保存到文件夾:/Vpi視頻/' + newFileName, //保存路徑 duration: 3000, }); //下載成功,d.filename是文件在保存在本地的相對(duì)路徑,使用下面的API可轉(zhuǎn)為平臺(tái)絕對(duì)路徑 let fileSaveUrl = plus.io.convertLocalFileSystemURL(d.filename); setTimeout(() => { plus.runtime.openFile(d.filename); //選擇軟件打開文件 }, 1500) } else { //下載失敗 uni.hideLoading(); uni.showToast({ icon: 'none', title: '下載失敗,請(qǐng)稍后重試', }); plus.downloader.clear(); //清除下載任務(wù) } }) dtask.start(); }); },
[聲明]原創(chuàng)不易,請(qǐng)轉(zhuǎn)發(fā)者備注下文章來源(hbsjsd.cn)【速建時(shí)代】。