console.log(data.Data);
downWgt(data.Data);
// 下载wgt文件
function downWgt(lastversion) {
console.log("开始下载升级文件");
plus.downloader.createDownload('http://app.souxuexiao.com/Version.aspx?_action=DownLoad', {
filename: "_doc/update/"
}, function(d, status) {
if (status == 200) {
console.log("更新文件下载成功");
console.log('_doc/update/'+lastversion);
installWgt('_doc/update/'+lastversion); // 安装wgt包
} else {
console.log("下载更新文件失败");
}
}).start();
}
// 更新应用资源
function installWgt(path) {
console.log("准备安装文件");
console.log("文件路径:"+path);
plus.runtime.install(path, {force: true}, function() {
plus.nativeUI.closeWaiting();
console.log("安装更新成功!");
plus.runtime.restart();
}, function(e) {
plus.nativeUI.closeWaiting();
console.log("安装更新文件失败[" + e.code + "]:" + e.message);
});
}
一下是console信息
当前应用版本:1.0.1 at index.html:234
检测更新成功:{"Code":0,"Message":"查询最新版本成功","Data":"1.0.2.wgt"} at index.html:170
准备下载升级文件 at index.html:176
1.0.2.wgt at index.html:180
开始下载升级文件 at index.html:199
更新文件下载成功 at index.html:204
_doc/update/1.0.2.wgt at index.html:205
准备安装文件 at index.html:214
文件路径:_doc/update/1.0.2.wgt at index.html:215
安装更新文件失败[10]:/storage/emulated/0/Android/data/io.dcloud.HBuilder/.HBuilder/apps/HBuilder/doc/update/1.0.2.wgt: open failed: ENOENT (No such file or directory) at index.html:222
说明几点:
1、.json配置文件已经去掉了所有注释信息
2、Hbuilder 点击发行=>制作移动APP资源升级包 制作出来的升级文件
3、http://app.souxuexiao.com/Version.aspx?_action=DownLoad 这个URL 是wgt文件的下载路径
9 个回复
chender - 与人为善
楼上的又是另外一个问题了,和楼主的情况不一样;
你这里找不到文件是因为因为.install方法是异步的;
你下面有有删除改文件的方法,所以在真正安装之前,文件已经被你删掉了;
在install的回调里面去做删除操作吧
Helen (作者)
为什么没有人来呢 自己顶一下
Helen (作者)
求关注。。。着急哦
开心的小雨
我也很想知道,安卓一直不行!
你不知道
这问题解决了否
chender - 与人为善
你下载的时候没有指定文件的名称(只指定了目录),所以文件被下到本地后名称是随机生成的(_doc/update/xxxxx.wgt而不是_doc/update/+lastversion);
两种解决方案:
1、plus.downloader.createDownload('http://app.souxuexiao.com/Version.aspx?_action=DownLoad', {
filename: "_doc/update/"+lastversion
}
2、 installWgt(d.filename); // 安装wgt包
你不知道
貌似不是文件名的问题啊 请看下面
2015-12-25 09:56
你不知道
文件是有的啊 但是貌似是plus.runtime.install找不到文件而plus.io.resolveLocalFileSystemURL能找到
_doc/update/ooxxxoo.wgt
/storage/emulated/0/Android/data/io.dcloud.HBuilder/.HBuilder/apps/HBuilder/doc/update/ooxxxoo.wgt: open failed: ENOENT (No such file or directory)
你不知道
还真是异步的问题 我之前也考虑过 但是ios上又没问题
看来在ios上的执行效率是要高些
1***@qq.com
http: //app.souxuexiao.com/Version.aspx ? _action = DownLoad这个URL是wgt文件的下载路径
这个是怎么实现的