检查更新
export default {
onLaunch: function() {
console.log('App Launch');
// 检查更新
//#ifdef APP-PLUS
plus.runtime.getProperty(plus.runtime.appid, (wgtinfo) => {
var version = wgtinfo.version // 客户端版本号
let update = {
url: this.$URL + '/api/xxxx/xxx?version=' + version,
success: (res) => {
if (res.data.updated === true) { // 如果服务器版本大于客户端版本则提醒更新
var url = res.data.url
uni.showModal({
title: '版本更新',
content: '有新的版本发布,是否立即进行新版本下载',
success: (res) => {
if (res.confirm) {
console.log('用户点击确定');
// plus.runtime.openURL(url); 打开浏览器去下载
// 调用下载方法
this.updateAPP(url) // app内下载
} else if (res.cancel) {
console.log('用户点击取消');
}
}
});
}
}
}
// 请求自己的api,与服务器版本进行比对,落后则执行官方的API更新应用
this.$apiReq.req(update)
})
//#endif
},
methods:{
updateAPP(url) {
console.log('正在更新: url='+ url)
// 官方API
var dtask = plus.downloader.createDownload(url,{},function(d,status){
//d为下载的文件对象
if(status==200){
//下载成功,d.filename是文件在保存在本地的相对路径,使用下面的API可转为平台绝对路径
var fileSaveUrl = plus.io.convertLocalFileSystemURL(d.filename);
plus.runtime.openFile(d.filename); //选择软件打开文件
}else{
//下载失败
plus.downloader.clear(); //清除下载任务
}
})
dtask.start();
}
},
onShow: function() {
console.log('App Show');
},
onHide: function() {
console.log('App Hide');
}
}
APP安卓离线打包后更新无法弹出安装
1.问题是因为没有添加APP安装应用的权限,解决方法在manifest.json
文件里面APP模块权限配置
的Android打包权限配置
勾选以下权限
<uses-permission android:name=\"android.permission.INSTALL_PACKAGES\"/>
<uses-permission android:name=\"android.permission.REQUEST_INSTALL_PACKAGES\"/>
2. 将build.gradle中的targetSdkVersion调到26或者更高
3.在Androidmanifest.xml的application节点下添加provider节点,将里面的io.dcloud.HBuilder改成自己应用的包名。
<provider
android:name="io.dcloudmon.util.DCloud_FileProvider"
android:authorities="XXXX.XXX.XX(当前的应用包名).dc.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/dcloud_file_provider" />
</provider>
4.在Androidmanifest.xml中添加权限
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>
可参考:https://ask.dcloud/article/35703
更多推荐
uni-app更新APP,版本更新,APP安卓离线打包后更新无法弹出安装
发布评论