小丸子2333
小丸子2333
  • 发布:2016-09-29 12:10
  • 更新:2019-06-21 18:24
  • 阅读:1405

ios下载文件

分类:HBuilder
iOS

ios下载文件后 status为null 不是200 android端正常
function onStateChanged(download, status) {

            if (download.state == 4 && status == 200) {  
                // 下载完成       

                plus.runtime.openFile(download.filename, {}, function(e) {  
                    mui.toast("无法打开此文件!!");  
                });  
            }  
        }  

        function startWork(url, name) {  
            alert(url);  
            var options = {  
                    method: "POST",  
                    filename: name  
                };  
                dtask = plus.downloader.createDownload(url, options);  
                dtask.addEventListener("statechanged", onStateChanged, false);  
                dtask.start();  
            }
2016-09-29 12:10 负责人:无 分享
已邀请:
DCloud_IOS_XTY

DCloud_IOS_XTY

看下是不是url未做编码?如不行请提供可以复现问题的demo并说明重现步骤

  • 小丸子2333 (作者)

    请问ios实现方式和android实现方式一致吗

    2016-09-29 13:48

  • 9***@qq.com

    我也遇到这个问题。ios和安卓写的一样,刚开能还能用,现在不能用了,说是ios必须用https

    2017-05-08 14:40

k***@163.com

k***@163.com

// 创建下载任务
function createDownload(url) {
console.log(url)
var dtask = plus.downloader.createDownload(url, {
method: 'GET'
}, function(d, status) {
// 下载完成
if(status == 200) {
console.log("Download success: " + d.filename);
} else {
console.log("Download failed: " + status);
}
});
dtask.addEventListener("statechanged", function(task, status){
switch(task.state) {
case 1: // 开始
console.log( "开始下载..." );
break;
case 2: // 已连接到服务器
console.log( "链接到服务器..." );
break;
case 3: // 已接收到数据
console.log( "下载数据更新:" );
console.log( task.downloadedSize+"/"+task.totalSize );
break;
case 4: // 下载完成
console.log( "下载完成!" + task.filename);
console.log( task.totalSize );
break;
}
if ( task.state == 4 && status == 200 ) {
// 下载完成
alert( "Download success: " + task.getFileName() );
}
});
console.log('start')
dtask.start()
}
ios上 Download failed: null,安卓上可以下载,请问如何解决?

YOLE

YOLE - 相互学习,相互扶持

ios怎么下下载不了

该问题目前已经被锁定, 无法添加新回复