Skip to content

appInit 版本更新工具

appInit 是用于 UniApp 应用版本更新管理的工具类。

接口定义

UpdateVersionOptions

参数名类型必填说明
versionstring最新版本号(如 1.0.1
descriptionstring更新内容描述
urlstringAndroid 更新包下载地址(支持 .apk.wgt
forceboolean是否强制更新,默认 false
iosStoreUrlstringiOS App Store 跳转地址
onProgress(progress: OnProgressDownloadResult) => void下载进度回调
beforeUpdate(version: string) => boolean | void更新前回调,返回 false 可阻止更新
onSuccess() => void更新成功回调
onFail(error: string) => void更新失败回调
onConfirm() => void用户点击确认按钮回调
onCancel() => void用户点击取消按钮回调

OnProgressDownloadResult

参数名类型说明
progressnumber下载进度百分比(0-100)
totalBytesWrittennumber已下载字节数
totalBytesExpectedToWritenumber预期总字节数

函数列表

updateVersion(options) => void

检查并执行应用版本更新,支持 iOS 和 Android 平台。

参数

参数名类型必填默认值说明
optionsUpdateVersionOptions-更新配置选项

返回值

类型说明
void无返回值

示例

typescript
import { appInit } from "@hy-app/ui";

appInit.updateVersion({
  version: "1.0.1",
  description: "1. 修复了已知bug\n2. 优化了性能",
  url: "https://example.com/app.apk",
  force: true,
  onProgress: (res) => {
    console.log(`下载进度: ${res.progress}%`);
  },
});

compareVersion(serverVersion, localVersion) => number

比较两个版本号的大小。

参数

参数名类型必填默认值说明
serverVersionstring-服务端版本号
localVersionstring-本地版本号

返回值

类型说明
number1 服务端版本更高,0 版本相同,-1 本地版本更高

示例

typescript
import { appInit } from "@hy-app/ui";

const result = appInit.compareVersion("1.2.0", "1.1.9");

if (result === 1) {
  // 需要更新
}

downloadApp(downloadUrl, callbacks) => void

下载更新包,支持 .wgt 和 .apk 格式。

参数

参数名类型必填默认值说明
downloadUrlstring-下载地址
callbacks-回调函数

返回值

类型说明
void无返回值