我不是风
我不是风
  • 发布:2017-08-02 14:22
  • 更新:2018-03-14 09:15
  • 阅读:1599

【报Bug】plus.downloader更新后,下载失败

分类:HTML5+

详细问题描述
[内容]
需求:手机端有多处用到下载功能;前段时间下载均是正常的,周五(2017-07-29)新打个sdk的包,然后下载均不能用,最初以为是hbuilder未更新的原因,更新前hbuilder版本是8.1.3.201705121932,此时真机连接环境测试时下载还是正常状态,打包后不正常;更新后版本8.8.0.201706142254,真机测试和打包测试下载均不正常,用官网hello5+的例子,将路径换为我正常使用的路径,下载也不正常

重现步骤
[步骤]
1.点击下载后,下载状态一直是0和2,一直显示“正在链接到服务器...”;

  1. 几分钟之后,状态会到4,返回的结果状态值为400;

说明:1. 下载的文件路径最深的是:_documents/fileName1/fileName2/file.json; 文件在10M以内;

  1. 检测最新版本的apk未设置路径,下载也是同样的问题

[结果]
下载失败

[期望]
官方技术人员尽快确定bug,给予回馈及修改完成时间,公司项目正在验收阶段,现在出问题后果很严重

运行环境
[系统版本]
hbuilder:8.8.0

[浏览器版本]
android:4.4——6.0均不正常

[IDE版本]
[mui版本]

附件
[代码片段]
说明:

  1. 注释的url1正常,url不正常,其他的下载和url的状况是一样的
  2. 问题重现例子可用hello5+的例子,换一个连接后台的url

/var url1= "https://download.fir.im/apps/575e737e00fc74706d000024/install?download_token=16c837f3f21ddb36b79e7ce11ff82303&release_id=58d4bdb8ca87a86fda00045c";/

var url = "http://api.fir.im/apps/latest/56fde13000fc743112000043?api_token=af44d85b6490e33bdbeb89cf8c672d43";
function download(url) {
var dtask = plus.downloader.createDownload( url, {
filename: "_downloads/"+new Date().getTime()+".apk"
}, function ( d, status ) {
if ( status == 200 ) { // 下载成功

                mask && mask.close();  
                pContainer.style.display = 'none';  
                var path = d.filename;  
                plus.runtime.install( path);  
            } else {//下载失败  
                alert( "Download failed: " + status );   
            }    
        });  

        //下载进度弹出框  
        downTask(dtask, "version");  

        dtask.start();  
    }  

    function downTask (dtask, flag) {  
        console.info("下载的区分标识:"+flag);  
        if ("version" == flag) {  
            document.getElementById("p-title").innerHTML = "应用更新";  
        } else if("map" == flag){  
            document.getElementById("p-title").innerHTML = "地图下载";  
        } else if ("solid" == flag) {  
            document.getElementById("p-title").innerHTML = "镇街部件下载";  
        }  

        dtask.addEventListener( "statechanged", function(task,status){  
            alert("下载状态:"+task.state);  
            if(!dtask){return;}  
            switch(task.state) {  
                case 1: // 开始  
                    downloadInfo.innerText = "准备下载...";  
                break;  
                case 2: // 已连接到服务器  
                    downloadInfo.innerText = "正在链接到服务器...";  
                break;  
                case 3: // 已接收到数据  
                    //版本更新时的操作  
                    if ("version" == flag) {  
                        if (!downloading) {  
                            totalSize.innerText = (task.totalSize/1000000).toFixed(2) +'MB';  
                            downloadInfo.innerText = "正在下载";  
                            downloading = true;  
                        }   
                        if ( count%10 == 0) {  
                            dSize.innerText = (task.downloadedSize/1000000).toFixed(2) +'MB';  
                            mp.set(task.downloadedSize/task.totalSize);  
                        }  
                        count++;  
                    } else if ("map" == flag){   //离线地图下载时的操作  
                        if (!mdownloading) {  
                            downloadInfo.innerText = "正在下载";  
                            mdownloading = true;  
                        }   
                        if ( mCount%10 == 0) {  
                            dSize.innerText = (task.downloadedSize/1000000).toFixed(2) +'MB';  
                            mp.set(task.downloadedSize);    ///task.mtotalSize  
                        }  
                        mCount++;  
                    } else if("solid" == flag) {     //离线部件下载操作  
                        if (!sdownloading) {  
                            downloadInfo.innerText = "正在下载";  
                            sdownloading = true;  
                        }   
                        if ( sCount%10 == 0) {  
                            dSize.innerText = (task.downloadedSize/1000000).toFixed(2) +'MB';  
                            mp.set(task.downloadedSize);    ///task.mtotalSize  
                        }  
                        sCount++;  
                    }  
                break;  
                case 4: // 下载完成  
                    if ("version" == flag) {  
                        dSize.innerText = (task.downloadedSize/1000000).toFixed(2) +'MB';  
                    } else if ("map" == flag) {  
                        downloadInfo.innerText = "正在删除本地离线以及解压当前地图文件,整个过程需要几分钟,请耐心等候!";  
                        dSize.innerText = (task.downloadedSize/1000000).toFixed(2) +'MB';  
                    } else if ("solid" == flag) {  
                        downloadInfo.innerText = "正在删除本地离线以及解压当前镇街部件,整个过程需要几分钟,请耐心等候!";  
                        dSize.innerText = (task.downloadedSize/1000000).toFixed(2) +'MB';  
                    }  

                break;  
            }  
        } );  
    }  

[安装包]

联系方式
[QQ]
1433146410

[电话]
18612538548

2017-08-02 14:22 负责人:无 分享
已邀请:
海带

海带

你的这个问题解决了吗

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