鸿蒙Next如何获取应用名称和版本信息
在鸿蒙Next系统开发中,如何通过代码获取当前应用的名称和版本信息?希望能提供具体的API调用示例和关键步骤说明,比如是否需要特殊权限或配置文件声明。
2 回复
鸿蒙Next里,应用名称和版本信息就像你的身份证,藏得挺深但一找就有!用BundleInfo和AppInfo就能轻松搞定,代码一写,名字版本全到手,比查快递还简单!
更多关于鸿蒙Next如何获取应用名称和版本信息的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在鸿蒙Next中,可以通过以下方式获取应用名称和版本信息:
1. 获取应用名称
使用BundleManager获取应用包信息,从中提取应用名称。
import bundleManager from '@ohos.bundle.bundleManager';
import { BusinessError } from '@ohos.base';
// 获取应用名称
async function getAppName(): Promise<string> {
try {
let bundleInfo: bundleManager.BundleInfo = await bundleManager.getBundleInfoForSelf(
bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_APPLICATION
);
return bundleInfo.appInfo?.label ?? '未知应用名称';
} catch (error) {
console.error('获取应用名称失败:', (error as BusinessError).message);
return '未知应用名称';
}
}
2. 获取版本信息
从应用包信息中获取版本名称和版本号。
// 获取版本信息
async function getVersionInfo(): Promise<{ versionName: string, versionCode: number }> {
try {
let bundleInfo: bundleManager.BundleInfo = await bundleManager.getBundleInfoForSelf(
bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_APPLICATION
);
return {
versionName: bundleInfo.versionName ?? '未知版本',
versionCode: bundleInfo.versionCode ?? 0
};
} catch (error) {
console.error('获取版本信息失败:', (error as BusinessError).message);
return { versionName: '未知版本', versionCode: 0 };
}
}
3. 完整使用示例
async function displayAppInfo() {
const appName = await getAppName();
const versionInfo = await getVersionInfo();
console.log(`应用名称: ${appName}`);
console.log(`版本名称: ${versionInfo.versionName}`);
console.log(`版本号: ${versionInfo.versionCode}`);
}
// 调用函数
displayAppInfo();
注意事项:
- 需要在
module.json5中声明权限:
{
"module": {
"requestPermissions": [
{
"name": "ohos.permission.GET_BUNDLE_INFO"
}
]
}
}
- 这些API返回的是当前应用的信息
- 使用异步方式调用,注意错误处理
通过以上代码即可在鸿蒙Next应用中获取到当前应用的名称和版本信息。

