function downWgt (location){
alert("downWgtdsafdasd");
var url=location;
plus.nativeUI.showWaiting("升级中...");
var dtask = plus.downloader.createDownload( url, {method:"GET"}, function(d,status){
if ( status == 200 ) {
console.log( "Download wgtu success: " + d.filename );
plus.runtime.install(d.filename,{},function(){
plus.nativeUI.closeWaiting();
plus.nativeUI.alert("Update wgtu success, restart now!",function(){
plus.runtime.restart();
});
},function(e){
plus.nativeUI.closeWaiting();
alert("Update wgtu failed: "+e.message);
});
} else {
plus.nativeUI.closeWaiting();
alert( "Download wgtu failed: " + status );
}
} );
dtask.addEventListener('statechanged',function(d,status){
console.log("statechanged: "+d.state);
});
dtask.start();
}
1 个回复
DCloud_App_Array
上面的代码本身是没有问题,只是下载并升级应用。
是否启动下载更新由调用downWgt()方法的JS决定,即如何判断需要升级?请重点排查升级逻辑判断代码。
需要注意:
获取应用的版本号不能使用plus.runtime.version获取(他获取的是apk/ipa的版本号,应用升级次版本号不会改变),应该使用plus.runtime.getProperty方法获取应用的版本号:
http://www.html5plus.org/doc/zh_cn/runtime.html#plus.runtime.getProperty