代码如下:
<script>
mui.plusReady(function(){
var vesUrl = sqlUrl + "/version/queryNewVersionByVerSystem?verSystem=Android";
var vesId = document.getElementById('vesion');
var topVesId = document.getElementById('topVes');
var vesNameId = document.getElementById('vesName');
var versionName ;
var versionCode ;
mui.getJSON("manifest.json", null, function(manifest){
versionName = manifest.name;
versionCode = manifest.version.name;
topVesId.innerHTML = versionCode;
vesNameId.innerHTML = versionName;
vesId.innerHTML = versionCode;
//alert("版本名称:"+manifest.name+",版本code:"+versionCode);
});
document.getElementById('upVes').addEventListener('tap', function(){
mui.ajax(vesUrl, {
dataType:'json',//服务器返回json格式数据
type:'get',//HTTP请求类型
success:function(data){
if (data.code == 200){
if(versionCode == data.data.verCode){
mui.alert('已是最新版本!');
}
else{
var docUrl = data.data.verUrl;
var dtask = plus.downloader.createDownload(docUrl, {}, function(d, status){
if (status == 200){
alert(d.filename);
plus.nativeUI.toast("正在准备环境,请稍后!",5000);
//sleep(1000);
plus.runtime.install(d.filename);//安装APK
}
else{
alert(status);
}
});
dtask.start();
}
}
else{
mui.alert('网络错误,请重试!');
}
},
error:function(xhr,type,errorThrown){
mui.toast('网络异常,请稍候再试');
}
});
});
});
</script>
代码执行到安装之后无法跳转到安装页面。在同事的6.0的安卓手机上可以运行。
在网上查找了相关资料,在manifest.json文件中添加了
"<uses-permission android:name=\"android.permission.REQUEST_INSTALL_PACKAGES\" />"
修改了
"minSdkVersion" : "14",
"targetSdkVersion" : "28"
这个值,担心25不够,改成了28还是不行。
求大神指教!!!
9***@qq.com
- 发布:2019-04-24 16:14
- 更新:2019-05-10 10:55
- 阅读:1049
使用plus.runtime.install在9.0版本的安卓手机无法进入更新界面
分类:HTML5+
2 个回复
9***@qq.com (作者) - 新人小白
1***@qq.com
直接弹出浏览器下载吧