鸿蒙Next如何获取应用版本号

在鸿蒙Next系统中,如何通过代码获取当前应用的版本号?需要调用哪个API,具体实现步骤是怎样的?求详细示例代码。

2 回复

鸿蒙Next里获取应用版本号?简单!用BundleInfoversionName就行。代码示例:

BundleInfo bundleInfo = ... // 获取BundleInfo
String version = bundleInfo.getVersionName();

搞定!版本号到手,就像问Siri今天天气一样简单~ 😄

更多关于鸿蒙Next如何获取应用版本号的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在鸿蒙Next(HarmonyOS NEXT)中,获取应用版本号可以通过以下方式实现:

1. 使用 BundleManager 获取版本信息

通过 BundleManager 查询应用的 BundleInfo,从中提取版本号。

import bundleManager from '@ohos.bundle.bundleManager';
import { BusinessError } from '@ohos.base';

// 获取应用版本号
async function getAppVersion(): Promise<string> {
  try {
    let bundleInfo: bundleManager.BundleInfo = await bundleManager.getBundleInfoForSelf(
      bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_APPLICATION
    );
    let versionName = bundleInfo.versionName; // 版本名称(如:1.0.0)
    let versionCode = bundleInfo.versionCode; // 版本号(如:100)
    return `VersionName: ${versionName}, VersionCode: ${versionCode}`;
  } catch (error) {
    console.error(`获取版本信息失败: ${(error as BusinessError).message}`);
    return "Unknown";
  }
}

// 调用示例
getAppVersion().then((version) => {
  console.log(`应用版本信息: ${version}`);
});

2. 关键说明

  • 权限配置:无需额外权限,但需在 module.json5 中声明 bundleManager 依赖。
  • 版本字段
    • versionName:用户可见的版本字符串(如 1.0.0)。
    • versionCode:内部用于升级判断的整型值(如 100)。

3. 注意事项

  • 仅支持查询当前应用信息,无法获取其他应用版本。
  • 需在 UI 线程外调用(例如使用异步方式)。

通过以上代码即可快速获取鸿蒙Next应用的版本信息。

回到顶部