资料相关
鸿蒙文档中心
鸿蒙论坛
鸿蒙社区
鸿蒙开发者学堂-华为认证
OpenHarmony三方库中心仓
鸿蒙CodeLab(示例项目)
鸿蒙API参考
ArkUI参考文档
项目相关
三方库管理工具名: ohpm
三方库依赖配置文件名:oh-package.json5
ohpm指令
配置说明: https://zhuanlan.zhihu.com/p/683109843
系统权限
- 网络权限配置: module.json5下配置
{
"module": {
"requestPermissions": [
{
"name": "ohos.permission.INTERNET"
}
]
}
}
DevEco操作
| 操作 | 功能路径 | 快捷键 |
|---|---|---|
| 全局搜索 | 编辑->查找->在文件中查找... | Command+Shift+F |
| 全局替换 | 编辑->查找->在文件中替换... | Command+Shift+R |
| 搜索文件/配置 | 编辑器右上角搜索按钮 | Double ⇧ |
装饰器 https://cloud.tencent.com/developer/article/2371806
| 装饰器 | 功能 | 修饰对象 | 详解 |
|---|---|---|---|
| @Entry | 标记一个页面的入口,一个页面有且仅能有一个@Entry | struct / class | |
| @Component | 标记一个UI组件 | struct / class | |
| @Preview | |||
| @Observed | |||
| @State | |||
| @Prop | |||
| @Link | |||
| @Watch | |||
| @Provide | |||
| @Consume | |||
| @ObjectLink | |||
| @Builder | 自定义构建函数 | 函数 | 局部不需要 function,全局需要 function 关键字 |
| @Style | |||
| @Extend |
页面生命周期
| method | 时机 | 修饰器 |
|---|---|---|
| onPageShow | 页面每次显示时触发 | @Entry |
| onPageHide | 页面每次隐藏时触发一次 | @Entry |
| onBackPress | 当用户点击返回按钮时触发 | @Entry |
| aboutToAppear | 组件即将出现时执行,build函数执行之前 | @Component |
| aboutToDisappear | 组件即将析构销毁时执行 | @Component |
UIAbility生命周期
| method | 时机 |
|---|---|
| Create | 应用加载过程中,UIAbility实例创建完成时触发, |
| Foreground | UIAbility实例切换至前台时 触发 |
| Background | UIAbility实例切换至后台时 触发 |
| Destroy | UIAbility实例销毁时触发 |
如何存放与获取图片等资源
参考官方文档:资源分类与访问
资源存放位置
resources
|---base
| |---element
| | |---string.json
| |---media /// # 图片资源放该目录下
| | |---icon.png
| |---profile
| | |---test_profile.json
|---en_US // 默认存在的目录,设备语言环境是美式英文时,优先匹配此目录下资源
| |---element
| | |---string.json
| |---media
| | |---icon.png
| |---profile
| | |---test_profile.json
|---zh_CN // 默认存在的目录,设备语言环境是简体中文时,优先匹配此目录下资源
| |---element
| | |---string.json
| |---media
| | |---icon.png
| |---profile
| | |---test_profile.json
|---en_GB-vertical-car-mdpi // 自定义限定词目录示例,由开发者创建
| |---element
| | |---string.json
| |---media
| | |---icon.png
| |---profile
| | |---test_profile.json
|---rawfile // 其他类型文件,原始文件形式保存,不会被集成到resources.index文件中。文件名可自定义。
资源访问
对于应用资源,在工程中,通过"$r('app.type.name')"形式引用。其中,app为应用内resources目录中定义的资源;type为资源类型或资源的存放位置,取值包含“color”、“float”、“string”、“plural”、“media”;name为资源命名,由开发者定义资源时确定。
常用组件(三方/鸿蒙)
- axios:第三方网络请求框架
- wtr:加载弹框、消息弹框、下拉刷新、上拉加载(不支持Api9)
- ImageKnife:第三方图片加载缓存库
- MaterialProgressBar:第三方组件自定义进度条
- zxing:解析和生成二维码的库
注意项
- 项目路径上不可以有中文,如项目所在文件夹名为“鸿蒙”,将导致无法使用DevEco Studio打开项目。
- 非自建项目运行起来,需要先在build-profile.json5文件中清空 signingConfigs 参数为[],然后重新登录签名。
点击DevEco Studio 菜单栏中的File(文件) -> Project Structure(项目结构),选择Project,在Signing Configs 页面配置签名信息。
3.新增Page页面,使用之前须先在resources/base/profile/main_pages.json下的src数组中注册page, 注册所处的文件profile/main_pages.json可能是自定义,在module.json5下可查到注册page的json文件
{
"module": {
// ...
"pages": "$profile:main_pages", // 通过profile下的资源文件配置
}
}
4.dataPreferences数据存储后重新run项目获取为空
Deveco-Studio默认运行配置是,每次都执行卸载重装,所以不会有上一次缓存的数据。
处理:修改运行时配置,勾选 Keep Application Data