更新方法,onLaunch或者onShow(推荐写在onShow内)调用就可以
const updateManagerFn = () => {
const updateManager = uni.getUpdateManager();
updateManager.onCheckForUpdate(function (res) {
// 请求完新版本信息的回调
console.log(res.hasUpdate, '请求完新版本信息的回调');
});
updateManager.onUpdateReady(function (res) {
uni.showModal({
title: '更新提示',
content: '新版本已经准备好,是否重启应用?',
showCancel: false,
success(res) {
if (res.confirm) {
// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
updateManager.applyUpdate();
}
}
});
});
updateManager.onUpdateFailed(function (res) {
// 新的版本下载失败
console.log('小程序版本下载失败', res)
uni.showModal({
title: '提示',
content: '新版小程序下载失败\n请自行退出程序,手动卸载本程序,再运行',
confirmText: "知道了"
});
});
}
App.vue
<script setup lang="ts">
onLaunch(() => {
console.log("App Launch");
});
onShow(async () => {
console.log("App Show");
updateManagerFn()
});
onHide(() => {
console.log("App Hide");
});
const updateManagerFn = () => {
const updateManager = uni.getUpdateManager();
updateManager.onCheckForUpdate(function (res) {
// 请求完新版本信息的回调
console.log(res.hasUpdate, '请求完新版本信息的回调');
});
updateManager.onUpdateReady(function (res) {
uni.showModal({
title: '更新提示',
content: '新版本已经准备好,是否重启应用?',
showCancel: false,
success(res) {
if (res.confirm) {
// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
updateManager.applyUpdate();
}
}
});
});
updateManager.onUpdateFailed(function (res) {
// 新的版本下载失败
console.log('小程序版本下载失败', res)
uni.showModal({
title: '提示',
content: '新版小程序下载失败\n请自行退出程序,手动卸载本程序,再运行',
confirmText: "知道了"
});
});
}
</script>
<style lang="scss">
@import "uview-plus/index.scss";
@import '@/static/scss/common/index.scss';
</style>