从 V3 到 V4
复制一个包含安装步骤和此插件的完整Markdown指南的设置提示。
为什么升级
标题为“为什么升级”在与您在 Discord 社区的许多讨论后,我发现手动模式非常繁琐且不安全使用,例如,自动还原功能不可用,如果您在手动模式下更新失败,用户必须删除应用并重新安装,这是一个糟糕的用户体验。
Meanwhile, I took this as an opportunity to give more freedom to you, and remove all bad code I made.
标题为“安装”
自动更新云npm i @capgo/capacitor-updater@4
如果您在应用程序中使用基本示例,则可以安全地升级到新版本,享受!
自主更新
自主更新对于您来说,仍然简单,变化是:
- 设置名称从
autoUpdateUrl在updateUrl - 端点方法从
GET更改为POST
手动用户
手动用户对于您来说,这是最显著的变化,但也是最好的!您获得大量改进,仔细阅读。
autoUpdateUrl变更updateUrl因为这个设置现在也可以在手动模式下使用- 删除
cancelDelay和delayUpdate取而代之setDelay - 不再
versionName在设置 - 键,之前大多数函数返回的对象
version复制到剪贴板BundleInfo
interface BundleInfo { id: string; version: string; downloaded: string; status: 'success' | 'error' | 'pending' | 'downloading'}- 变更记录
- 被称为
version现在指的是bundle id指向旧的version是一个随机的10个字符的字符串,这id是唯一可靠和独特的访问您的捆绑包的方式,例如7Dfcd2RedN.version现在指的是versionName您为捆绑包选择的1.0.0
- 被称为
updateUrl从get到post由于自定义头部对一些人来说是一个问题,而post更有逻辑性,因此所有以前的头部都转移到了主体并添加了前缀cap_消失。versionName方法已删除,取而代之的是getId- list 现在返回一个列表
BundleInfo - 重命名
getId在getDeviceId autoUpdate如果您使用手动模式,设置为 false
- 方法
getLatest该方法允许您从您的服务器获取updateUrl获取最新可用版本 - 方法
setDelay这些方法{类型:“background” | “kill” | “nativeVersion” | “date”,值?:字符串}作为设置延迟到不同模式的参数。 - 方法
next在下一次后台运行时设置版本,相反于set立即执行。 - 方法
isAutoUpdateEnabled让您知道是否处于自动更新上下文中。 - 事件
downloadComplete下载达到 100% 时 - 添加了必填字段
version在下载方法中 notifyAppReady在手动模式下也成为必填项,如果不调用则在 10 秒后应用程序恢复到之前版本。
贡献者
贡献者@lincolnthree 非常感谢您开始这项工作,没有您的帮助,这个更新是无法完成的。