MUI——版本升级
版本升级
1.获取当前版本号
plus.runtime.getProperty(plus.runtime.appid, function(inf) {
console.log(inf) // inf 当前版本号
})
2.发请求,获取线上发布的版本号,进行比对
3.发现新版本,进行更新下载
4.下载
var downObj = plus.downloader.createDownload(url, {
filename: "_doc/update/"
}, function(d, status) {
mui.toast("下载成功");
plus.nativeUI.closeWaiting();
if (status == 200) {
installWgt(d.filename); // 安装wgt包
} else {
mui.toast("下载失败!")
}
});
downObj.start();
5.安装
plus.runtime.install(path, {}, function() {
plus.nativeUI.closeWaiting();
plus.nativeUI.alert("安装成功!", function() {
plus.runtime.restart();
});
}, function(e) {
plus.nativeUI.closeWaiting();
plus.nativeUI.alert("更新失败===" + e.message);
});
下载
var dtask = plus.downloader.createDownload(
fileUrl, {
filename: "_doc/download/" + filename
},
function(d, status) {
if (status == 200) {
//下载成功逻辑
}
});
dtask.addEventListener("statechanged", function(task, status) {
switch (task.state) {
case 1:
break;
case 2:
break;
case 3:
var size = bytesToSize(task.downloadedSize);
//监听下载进度
break;
case 4:
break;
}
});
dtask.start();
function bytesToSize(bytes, flag) {
if (flag) {
bytes = bytes * 1024
}
if (bytes === 0) return '0 B';
var k = 1024;
sizes = ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
i = Math.floor(Math.log(bytes) / Math.log(k));
return (bytes / Math.pow(k, i)).toPrecision(3) + ' ' + sizes[i];
}
查看本应用下文件
苹果可能会出现打开失败,此步骤需要安装阅读软件
plus.io.resolveLocalFileSystemURL('_doc/download/' + filename, function(entry) {
var url = entry.toLocalURL();
plus.runtime.openFile(url, {}, function(e) {
plus.nativeUI.alert('打开失败,你未安装浏览软件,请安装后重试');
});
})
登录/自动登录
- 验证码组件
- 通过监听表单input/change事件实时监听电话号码输入格式,通过则放开获取验证码,否则置灰按钮。
获取设备信息
- Appid: plus.runtime.appid
- imei: plus.device.imei //设备标识
- model:plus.device.model //设备型号
- app_version: plus.runtime.version//应用版本