mui实现APP在线更新版本(mui文件下载)

该博客介绍了如何使用mui框架来实现APP的在线更新功能。通过比较本地App版本和网络最新版本,当检测到新版本时,提示用户进行更新。步骤包括获取本地和网络版本信息,使用mui下载器下载新版本,以及安装更新。

功能描述:实现mui框架开发的app能够在线检测是否有新版本,如果有新版本提示用户进行更新。

实现原理:通过判断当前app版本与网络最新版本进行提示更新。

步骤:

一、获取本地当前App版本。

mui.getJSON("配置文件路径,如:‘../manifest.json’", null, function(manifest){
	versionName = manifest.version.name;
	versionCode = Number(manifest.version.code);
	mui.toast("版本名称:"+versionName+",版本code:"+versionCode);
});

如图:code为版本编号,name为版本名称,版本编号为判断版本是否需要更新的关键。

二、获取网络最新版本信息(如版本编号)。

三、下载新版本(使用mui的下载器进行下载)。

// 开始下载
function dowload (){
	var options = {method:"GET"};
	dtask = plus.downloader.createDownload(下载链接, options );
	dtask.addEventListener( "statechanged", function(task,status){              
		switch(task.state) {
			case 1: // 开始
				mui.toast("开始下载...")
			break;
			case 2: // 已连接到服务器
				mui.toast("连接到服务器...")
				document.getElementById("new_grade_content").innerHTML = "正在下载: 
			break;
			case 3: // 已接收到数据
				alert(task.downloadedSize)    // 已下载文件大小
                alert(task.totalSize)    // 文件大小
				
			break;
			case 4: // 下载完成
				mui.toast("下载完成!")                
				console.log(task.totalSize)   
				plus.io.resolveLocalFileSystemURL(task.filename, function(entry) { 
							 alert(entry.toLocalURL()+"")  // 显示下载的文件存储绝对地址
							console.log(entry.toLocalURL())     //绝对地址                                      
					   });
				alert(task.filename)  // 显示下载好的文件名称
			break;
		}
	} );
	dtask.start();         
}

四、安装下载好的app

// 判断文件是否存在,不存在则不安装
plus.io.resolveLocalFileSystemURL(plus.storage.getItem("new_app_filename"),function(entry){
    // 如果存在进行安装
    if(entry.isFile){
        plus.runtime.install(app的文件路径, {}, function(){  
            alert("安装成功")
        }, function(){  
            alert("安装失败")
        }); 
    
    }else{	
        // 不存在
        alert("文件不存在")
    }
},function(e){});

注:以此记录,欢迎互相讨论,不喜勿喷。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值