华为HarmonyOS 帮助应用实现更好的推广下载能力 -- 2 应用市场更新功能

应用市场更新功能为开发者提供版本检测、显示更新提醒功能。开发者使用应用市场更新功能可以提醒用户及时更新到最新版本。

场景介绍

当应用启动完成或用户在应用中主动检查应用新版本时,开发者可以通过本服务,来查询应用是否有可更新的版本。如果存在可更新版本,您可以通过本服务为用户显示更新提醒。

图1 调用检查更新、显示更新提醒

图2 进入更新界面

业务流程

  1. 应用调用检查更新接口。
  2. 升级服务API返回是否有新版本。
  3. 调用显示升级对话框接口。
  4. 升级服务API向应用返回显示结果。

接口说明

应用市场更新服务提供以下接口,具体API说明详见接口文档

接口名

描述

checkAppUpdate(context: common.UIAbilityContext): Promise<CheckUpdateResult>

检查更新接口,用于检测当前是否有新版本。

showUpdateDialog(context:common.UIAbilityContext): Promise<ShowUpdateResultCode>

显示升级对话框接口,用于提示用户进行升级。

开发步骤

检测新版本

  1. 导入updateManager模块及相关公共模块。

     
      
    1. import { updateManager } from '@kit.StoreKit';
    2. import { hilog } from '@kit.PerformanceAnalysisKit';
    3. import type { common } from '@kit.AbilityKit';
    4. import { BusinessError } from '@kit.BasicServicesKit';

  2. 构造参数。

    入参为common.UIAbilityContext类型的Context。
     
      
    1. let context: common.UIAbilityContext = getContext() as common.UIAbilityContext;

  3. 调用checkAppUpdate方法。

     
      
    1. try {
    2. updateManager.checkAppUpdate(context)
    3. .then((checkResult: updateManager.CheckUpdateResult) => {
    4. hilog.info(0, 'TAG', "Succeeded in checking Result updateAvailable:" + checkResult.updateAvailable);
    5. }).catch((error: BusinessError) => {
    6. hilog.error(0, 'TAG', `checkAppUpdate onError.code is ${error.code}, message is ${error.message}`);
    7. });
    8. } catch (error) {
    9. hilog.error(0, 'TAG', `checkAppUpdate onError.code is ${error.code}, message is ${error.message}`);
    10. }

显示升级对话框

  1. 导入updateManager 模块及相关公共模块。

     
      
    1. import { updateManager } from '@kit.StoreKit';
    2. import { hilog } from '@kit.PerformanceAnalysisKit';
    3. import type { common } from '@kit.AbilityKit';
    4. import { BusinessError } from '@kit.BasicServicesKit';

  2. 构造参数。

    入参为common.UIAbilityContext类型的Context。
     
      
    1. let context: common.UIAbilityContext = getContext() as common.UIAbilityContext;

  3. 调用showUpdateDialog方法。

     
      
    1. try {
    2. updateManager.showUpdateDialog(context)
    3. .then((resultCode: updateManager.ShowUpdateResultCode) => {
    4. hilog.info(0, 'TAG', "Succeeded in showing UpdateDialog resultCode:" + resultCode);
    5. })
    6. .catch((error: BusinessError) => {
    7. hilog.error(0, 'TAG', `showUpdateDialog onError.code is ${error.code}, message is ${error.message}`);
    8. });
    9. } catch (error) {
    10. hilog.error(0, 'TAG', `showUpdateDialog onError.code is ${error.code}, message is ${error.message}`);
    11. }
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

青瓷代码世界

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值