Skip to content

小游戏更新机制 ​

开发者发布新版本后,OpenPaaS SDK 会通过静默更新或启动更新确保用户最终能使用到最新版本。

静默更新机制 ​

当游戏在后台发布新版本后,OpenPaaS SDK 会在多个时机检查并更新。

  • 未启动时更新:OpenPaaS SDK 会定时检查最近使用的小游戏。若有新版,会自动同步,确保用户下次打开时即为最新版。

启动时更新 ​

OpenPaaS SDK 每次冷启动时都会检查更新:

  1. 发现更新:异步下载新版本代码包。
  2. 当前运行:本次启动仍使用客户端本地的旧版本包。
  3. 应用时机:新版本需要等到下一次冷启动时才会应用。

强制更新 ​

如果需要用户马上应用最新版本,可以使用以下两种方式

检测更新API ​

可以使用 sud.getUpdateManager API 进行处理。

javascript
const updateManager = sud.getUpdateManager();

updateManager.onCheckForUpdate(function(res) {
  // 请求完新版本信息的回调
  console.log(res.hasUpdate);
});

updateManager.onUpdateReady(function() {
  sud.showModal({
    title: "更新提示",
    content: "新版本已经准备好,是否重启游戏?",
    success(res) {
      if (res.confirm) {
        // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
        updateManager.applyUpdate();
      }
    }
  });
});

updateManager.onUpdateFailed(function() {
  // 新版本下载失败
});

调试API:开发者工具提供了强制更新的调试能力,通过编译模式 - 编辑编译模式 - 勾选「下次编译时模拟更新」即可在开发者工具上调试强制更新功能(真机无法调试)

设置最低可用版本 ​

  • 如果希望用户始终打开最新版本,可通过【OpenPaaS 后台 - 设置 - 基本设置 - OpenPaaS 最低可用版本】,修改为最新版本