












本文档系统阐述鸿蒙生态中ohos前缀的来源、含义、使用场景及相关命名规范,帮助开发者深入理解鸿蒙资源体系与API命名规则,避免开发中的命名混淆与使用错误。
ohos是OpenHarmony Operating System的缩写,即开源鸿蒙操作系统,是鸿蒙生态的核心标识。具体拆解如下:
|
O |
Open |
开放、开源 |
|
H |
Harmony |
鸿蒙(HarmonyOS生态品牌) |
|
O |
Operating |
操作(系统) |
|
S |
System |
系统 |
在华为/鸿蒙开发上下文中,ohos_常作为资源、API或模块的前缀,表示"属于OpenHarmony / HarmonyOS体系",是鸿蒙生态的统一命名空间标识。
理解ohos前缀需要先明确OpenHarmony与HarmonyOS的区别与联系:
|
项目 |
OpenHarmony |
HarmonyOS(华为鸿蒙) |
|
性质 |
开源项目 |
商业发行版 |
|
运营主体 |
开放原子开源基金会 |
华为技术有限公司 |
|
开源协议 |
Apache 2.0 |
包含闭源组件 |
|
核心组成 |
操作系统基础框架、基础服务、公共API |
基于OpenHarmony + 华为自研闭源组件(HMS、华为云服务、硬件驱动等) |
|
适用范围 |
所有厂商可自由使用、修改、发行 |
仅适用于华为品牌设备及合作伙伴授权设备 |
|
API兼容性 |
公共API完全兼容 |
向下兼容OpenHarmony API,扩展华为专属API |
|
ohos前缀使用 |
全量使用 |
公共API使用ohos前缀,华为扩展API使用huawei前缀 |
开发提示
日常开发中,ohos_前缀既出现在纯OpenHarmony项目中,也出现在HarmonyOS应用中,两者公共API基本兼容。开发跨设备通用应用时优先使用ohos前缀的公共API,确保最大兼容性。
鸿蒙系统提供的原生API模块均以@ohos.为前缀,是应用开发的核心能力来源:
|
// 基础能力 // 系统服务 // UI组件 |
|||
|
API分类 |
命名规则 |
示例 |
|
|
基础能力 |
@ohos.模块名 |
@ohos.util, @ohos.buffer |
|
|
系统服务 |
@ohos.服务名Manager/Service |
@ohos.notificationManager, @ohos.powerManager |
|
|
多媒体 |
@ohos.multimedia.子模块 |
@ohos.multimedia.camera, @ohos.multimedia.audio |
|
|
网络通信 |
@ohos.net.子模块 |
@ohos.net.http, @ohos.net.socket |
|
|
ArkUI组件 |
@ohos.arkui.组件类型 |
@ohos.arkui.advanced, @ohos.arkui.tsui |
|
鸿蒙应用资源统一使用ohos_作为前缀,遵循OpenHarmony资源规范:
// 资源引用示例
Image($r('ohos.media.app_icon')) // 应用图标
Text($r('ohos.string.app_name')) // 应用名称
Color($r('ohos.color.primary')) // 主题主色
Float($r('ohos.float.button_radius')) // 圆角数值
系统内置资源与自定义资源的区别:
|
资源类型 |
命名格式 |
示例 |
说明 |
|
系统内置资源 |
$r('sys.ohos_*') |
$r('sys.ohos_ic_back') |
系统提供的公共资源,所有应用可直接使用 |
|
应用自定义资源 |
$r('app.ohos_*') |
$r('app.ohos_app_icon') |
应用自身定义的资源,仅当前应用可用 |
鸿蒙系统权限均以ohos.permission.为前缀,是应用访问系统能力的准入标识:
// 常用权限示例
"ohos.permission.INTERNET" // 网络访问权限
"ohos.permission.LOCATION" // 定位权限
"ohos.permission.CAMERA" // 相机权限
"ohos.permission.READ_MEDIA" // 媒体读取权限
"ohos.permission.NOTIFICATION_CONTROL" // 通知权限
系统配置项、属性值等也使用ohos前缀标识:
// module.json5配置示例
{
"module": {
"name": "entry",
"type": "entry",
"ohos:compileSdkVersion": 12,
"ohos:compatibleSdkVersion": 12,
"ohos:targetSdkVersion": 12,
"ohos:releaseType": "Release"
}
}
|
资源类型 |
目录 |
命名规范 |
示例 |
|
字符串 |
element/string.json |
ohos_模块_功能_描述 |
ohos_login_title, ohos_home_welcome |
|
颜色 |
element/color.json |
ohos_color_功能_状态 |
ohos_color_primary, ohos_color_text_disabled |
|
数值 |
element/float.json |
ohos_float_组件_属性 |
ohos_float_button_height, ohos_float_card_radius |
|
布尔值 |
element/boolean.json |
ohos_bool_功能_开关 |
ohos_bool_dark_mode_enabled |
|
图片资源 |
media/ |
ohos_ic_功能_描述 |
ohos_ic_back, ohos_ic_home_selected |
|
动画资源 |
animation/ |
ohos_anim_场景_类型 |
ohos_anim_page_transition, ohos_anim_loading |
|
布局资源 |
layout/ |
ohos_layout_页面_组件 |
ohos_layout_home_header, ohos_layout_item_product |
• 语义化:资源名称应清晰表达用途,避免无意义的缩写和数字编号
• 统一前缀:所有自定义资源统一使用ohos_前缀,与系统资源保持一致的命名风格
• 模块划分:多模块项目中资源名应包含模块前缀,避免资源冲突
• 状态标识:不同状态的资源名称应包含状态后缀(_normal、_pressed、_selected、_disabled等)
• 全小写:资源名称全部使用小写字母,单词间用下划线分隔
// ✅ 正确:语义化命名
ohos_ic_login_button_normal.png
ohos_ic_login_button_pressed.png
ohos_string_login_error_password_wrong.json
// ❌ 错误:命名不规范
icon1.png
btn.png
error_msg.json
• 优先使用公共API:优先使用@ohos.*前缀的公共API,确保应用的跨设备兼容性
• 避免使用非公开API:不使用@ohos._*开头的私有API,避免版本升级时兼容性问题
• 版本适配:使用高版本API时添加版本判断,确保低版本系统上的兼容性
• 权限最小化:只申请必要的ohos.permission.*权限,避免过度申请
• 资源复用:公共资源统一管理,避免重复定义相同功能的资源
• 多语言支持:所有字符串资源都放在string.json中,禁止硬编码文本
• 主题适配:颜色、数值等资源使用主题定义,支持深色模式等多主题切换
• 资源清理:定期清理未使用的资源,减少安装包体积
1. ✅ 所有API导入使用正确的@ohos.*前缀,无拼写错误
2. ✅ 所有自定义资源使用ohos_前缀,命名符合规范
3. ✅ 权限申请使用正确的ohos.permission.*前缀
4. ✅ 没有使用未公开的私有API
5. ✅ 资源命名语义化,无无意义名称
6. ✅ 相同功能的资源没有重复定义
7. ✅ 字符串资源没有硬编码在代码中
8. ✅ 高版本API调用添加了版本适配逻辑
A:是的,ohos前缀的公共API和资源在两个体系中完全兼容,是跨设备开发的首选。华为扩展的专属API会使用huawei前缀,仅在HarmonyOS设备上可用。
A:不是强制要求,但强烈建议遵循官方命名规范,使用ohos_前缀,保持代码风格统一,提升可读性和可维护性。
A:@kit.*是API 12+引入的新模块化导入方式,是对原有@ohos.*模块的重新组织和封装,功能完全兼容,新的开发推荐使用@kit方式导入。
// 旧方式
import promptAction from '@ohos.promptAction';
// 新方式(API 12+推荐)
import { promptAction } from '@kit.ArkUI';
A:不可以,sys前缀的资源是系统内置资源,应用只能读取使用,无法修改。自定义资源使用app.ohos_前缀。
扩展阅读
OpenHarmony开源项目主页
鸿蒙资源分类与访问官方指南
鸿蒙系统权限列表
文档版本:V1.0 | 适配版本:HarmonyOS NEXT API 12+ | 更新日期:2024年4月
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。