APP版本更新、IOS更新(跳转IOS store)
特别说明,安卓需要添加俩个权限
android.permission.INSTALL_PACKAGES和android.permission.REQUEST_INSTALL_PACKAGES;通知栏下载进度提示需要勾选Push模块,添加权限android.permission.ACCESS_NOTIFICATION_POLICY和android.permission.POST_NOTIFICATIONS
提供方法
-
appUpdateapp更新,自行判断是否需要更新,需要更新就调用,建议在App.vue中全局调用,其它地方看自己是否需要
参数
| 参数名 | 释义 | 必填 | 示例值 |
|---|---|---|---|
| platform | ios还是android | Y | android |
| updateContent | 更新的内容,\n用于换行 |
Y | 修复BUG |
| downUrl | 下载地址 | Y | 安卓是apk地址,ios是appstore地址 |
| version | 新版本号 | N | 1.0.1 |
| force | 强制更新 | N | true |
| mainColor | 主颜色 | N | FF5B78 |
代码示例
<script>
import appUpdate from '@/uni_modules/wczd-app-update/js_sdk/app-update.js'
export default {
methods: {},
onLaunch: function() {
// #ifdef APP-PLUS
function handleEvent (data) {
let payload = data.payload
if(payload.msgType === 'updateApp'){
if(payload.state){
setTimeout(()=>{
//下载完成,安装app
plus.runtime.install(
payload.tempFilePath,
{
force: true //true表示强制安装,不进行版本号的校验;false则需要版本号校验,
},
function() {
},
function(e) {
uni.showToast({
title:e.message,
icon:'none',
duration:2500
})
}
)
},500)
}else{
//下载失败,重新下载
}
}
plus.push.removeEventListener('click', handleEvent, false)
plus.push.addEventListener('click', handleEvent, false)
}
plus.push.addEventListener('click', handleEvent, false)
// #endif
},
onShow: function() {
//#ifdef APP-PLUS
let updateInfo = {
platform: 'android',
updateContent: '更新提示,更新提示,更新提示,更新提示,更新提示,更新提示,更新提示,更新提示,更新提示,更新提示,更新提示',
downUrl: 'https://wfgtest-1631.oss.wefanbot.com/DEV/qw/106658768610001/1727229160089/wczd_v1.0.0.apk',
version: '1.0.1',
force: false,
mainColor: 'FF5B78',
}
appUpdate(updateInfo)
//#endif
},
onHide: function() {}
}
</script>
<style>
/*每个页面公共css */
</style>