HarmonyOS 鸿蒙Next移动应用APP如何实现软更新

HarmonyOS 鸿蒙Next移动应用APP如何实现软更新 用户在启动APP的时候,代码调用的是官方系统提供的检查升级API,是否可以实现应用的软更新呢,用户自主选择是否升级?

8 回复

Q:非公开发布应用,如何跳转至应用详情进行升级?
A:应用选择非公开发布上架后,发布类型下方展示非公开发布链接,链接形式为:https://appgallery.huawei.com/app/detail?id=包名,可以通过App Linking方式跳转。在已知应用包名的情况下也可以自行构造Deep Linking链接实现。

更多关于HarmonyOS 鸿蒙Next移动应用APP如何实现软更新的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


使用应用市场的kit 应用市场更新功能-AppGallery Kit(应用市场服务)-应用服务 - 华为HarmonyOS开发者

检查是否有新版本,然后自定义一个弹窗,用户如果确定就自主去应用市场了;

或者在 设置中-增加一个检查更新-调用下面的api,进行版本更新提示,而不是进入首页就检查版本

cke_5108.png

cke_306.png

如果走的非公开发布,怎样跳转到升级窗口啊

找HarmonyOS工作还需要会Flutter的哦,有需要Flutter教程的可以学学大地老师的教程,很不错,B站免费学的哦:https://www.bilibili.com/video/BV1S4411E7LY/?p=17

应用选择非公开发布(https://developer.huawei.com/consumer/cn/doc/app/agc-help-non-public-release-0000002278016482)上架后,发布类型下方展示非公开发布链接,链接形式为:https://appgallery.huawei.com/app/detail?id=包名,可以通过App Linking方式跳转。在已知应用包名的情况下也可以自行构造Deep Linking链接实现。

自己数据库保存app的版本数据,对应的版本和应用市场保持一致。先调用自己接口判断是否有更新,用户同意再跳转应用市场。

鸿蒙Next应用软更新可通过以下方式实现:

  1. 使用鸿蒙动态部署能力,通过AppGallery Connect分发更新包
  2. 调用ohos.updater接口实现差分更新
  3. 配置config.json中的"updater"字段定义更新策略
  4. 使用HOTA(鸿蒙Over-The-Air)服务进行静默更新
  5. 通过DownloadSession类实现后台下载更新包

更新包格式需使用鸿蒙专属的.hap或.hsp格式,支持增量更新。系统会自动校验签名和完整性,确保安全。

在HarmonyOS Next中实现应用软更新是完全可行的,可以通过以下方式实现:

  1. 使用官方提供的升级API:
  • 调用ohos.update模块中的checkUpdate方法检查更新
  • 获取到更新信息后,可以展示给用户更新提示弹窗
  • 用户确认后调用downloadinstall方法执行更新
  1. 关键实现步骤:
// 检查更新
try {
  const updateInfo = await update.checkUpdate();
  if(updateInfo.hasUpdate) {
    // 弹出更新提示,让用户选择
    showUpdateDialog(updateInfo);
  }
} catch (err) {
  console.error('检查更新失败');
}

// 用户确认后执行更新
async function doUpdate() {
  try {
    await update.download();
    await update.install();
  } catch (err) {
    console.error('更新失败');
  }
}
  1. 注意事项:
  • 需要配置正确的签名和权限
  • 建议在WiFi环境下才提示大版本更新
  • 可以设置跳过本次更新的选项

这种方式完全遵循用户自主选择原则,符合HarmonyOS的应用更新规范。

回到顶部