🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
[TOC] ## 概述 小程序每次**冷启动**时,都会检查是否有更新版本,如果发现有新版本,将会异步下载新版本的代码包,并同时用客户端本地的包进行启动,即新版本的小程序需要等下一次冷启动才会应用上。 如果需要马上应用最新版本,可以使用`uni.getUpdateManagerAPI` 进行处理。 本API返回**全局唯一**的版本更新管理器对象: updateManager,用于管理小程序更新 **uni.getUpdateManager() 对象的方法列表:** | 方法 | 参数 | 说明 | | --- | --- | --- | | onCheckForUpdate | callback | 当向小程序后台请求完新版本信息,会进行回调 | | onUpdateReady | callback | 当新版本下载完成,会进行回调 | | onUpdateFailed | callback | 当新版本下载失败,会进行回调 | | applyUpdate | | 当新版本下载完成,调用该方法会强制当前小程序应用上新版本并重启 | **onCheckForUpdate(callback) 回调结果说明:** | 属性 | 类型 | 说明 | | --- | --- | --- | | hasUpdate | Boolean | 是否有新的版本 | 示例 ``` const updateManager = uni.getUpdateManager(); updateManager.onCheckForUpdate(function (res) { // 请求完新版本信息的回调 console.log(res.hasUpdate); }); updateManager.onUpdateReady(function (res) { uni.showModal({ title: '更新提示', content: '新版本已经准备好,是否重启应用?', success(res) { if (res.confirm) { // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启 updateManager.applyUpdate(); } } }); }); updateManager.onUpdateFailed(function (res) { // 新的版本下载失败 }); ```