uniapp檔案操作依賴IO子產品,網上很多小白都不知道怎麼下載下傳檔案到手機自定義目錄,
看官方文檔下載下傳檔案永久儲存uni.downloadFile和uni.saveFile,檔案存放的位置開始時臨時的,轉成永久的後
它儲存的位置在
“内部存儲\Android\data\io.dcloud.HBuilder\apps\HBuilder\doc\uniapp_save”裡
不友善操作,下載下傳的檔案也不友善使用者使用。
Download() {
var url = "http://xxxxx"
let dtask = plus.downloader.createDownload(url, {
//本地路徑開頭使用file://,跟上手機檔案本地目錄storage/emulated/0,就是使用者檔案管理器能看到的了,之後我建立微垠作為檔案夾,字尾是用于檔案命名和格式修改,大家可以使用變量。
filename: "file://storage/emulated/0/微垠/" + "微垠影視v1.2.apk" //利用儲存路徑,實作下載下傳檔案的重命名
},
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();
}