一 APP

HarmonyOS 的应用软件包以APP Pack, 有一个或多个HAP 以及描述每个HAP数学的pack.info组成。HAP是Abilities的部署包,代码围绕Ability组件展开。

1. 组成

  1. 一个HAP 有 代码、资源、第三方库及应用配置文件组成的模块包,有两种模块包 entry 和 feature。

    1. entry:主模块,一个APP中,对于同一设备类型有且只有一个entry类型的HAP,可以独立安装运行。
    2. feature:动态特新模块,一个APP可包含一个或多个feature类型的HAP,可不包含。只有包含Ability的HAP能独立运行。
  2. HAP由零个或一个或多个Ability组成。

2. 结构

二 Ability

  1. 应用能力的抽象,一个应用包含一个或多个Ability。两种类型:FA和PA,是应用的基本单元,实现特定功能,FA有UI,PA无UI。(欸,是不是很像前端和后端啊)
  2. 库文件是应用的第三方代码。
  3. 配置文件包含Ability的配置信息,用于声明Ability,应用所需权限等。

1. pack.info

  1. 描述HAP属性,由IDE生成,HAP具体属性包括:

    1. delivery-with-install: 表示HAP是否支持随应用安装。true表示支持。
    2. name:HAP文件名。
    3. module-type:模块类型,entry或feature。
    4. device-type:支持该HAP运行的设备类型。

三 库文件

HAR全名HarmonyOS Ability Resources,提供构建文件所需内容,包括源代码、资源文件、和config.json 文件。不同于HAP,不能独立安装运行,只能被引用。

四 资源文件

1. 应用资源文件

放在resourece目录下,便于开发者实用和维护。包括base目录和限定词目录。

2. resource 目录结构

3. 限定词目录

由表征应用场景或设备特征的限定词组合,包括语言,文字,国家或地区,横竖屏,设备类型和屏幕密度六个维度。限定词之间通过下划线或者中划线“-” 连接。

限定词目录下包含限定词文件,分为三类,element,media,animation(动画资源)。

4. base目录限定词引用

  1. 在应用开发的hml和js文件使用$r语法,可以对JS模块内的resources目录下的json资源进行格式化,获取相应的资源内容。
  2. 对于js页面对象的属性$r, 可以使用string类型的key参数,返回值为string类型。

5. 系统资源文件

OpenHarmony学习笔记相关推荐

  1. OpenHarmony学习笔记——Hi3861使用DHT11获取温湿度

    文章目录 前言 DHT11简介 通信流程 硬件连接 编程实现 GPIO API简介 复位总线 DHT11应答 数据读取 效果一览 总结 目录 前言 此文主要是使用Hi3861的GPIO口,模拟1-Wi ...

  2. OpenHarmony学习笔记——I2C驱动0.96OLED屏幕

    文章目录 前言 I2C简介 硬件连接 编程实现 创建代码框架 初始化并复用GPIO 初始化I2C0 初始化OLED 从机地址 OLED初始化配置 功能代码 总结 目录 前言 前面介绍了一些关于在Hi3 ...

  3. OpenHarmony学习笔记——Hi3861+ASR-01的语音识别助手

    文章目录 前言 Hi3861的UART与PWM简介 UART简介 PWM ASR-01离线语音识别 天问官方介绍 硬件连接 软件部分 ASR-01代码 Hi3861端代码 初始化资源 串口指令识别 效 ...

  4. OpenHarmony学习笔记——点亮你的LED

    文章目录 前言 点亮LED 单片机开发 1.前后台框架 2. 时间片轮询框架 3. 实时操作系统框架 OpenHarmony开发 OpenHarmony系统目录 业务代码 编译构建文件 小结 Open ...

  5. 开源鸿蒙南向嵌入学习笔记——NAPI框架学习(一)

    开源鸿蒙南向嵌入学习笔记--NAPI框架学习(一) 前言--系列介绍 本系列文章主要是记录笔者在鸿蒙南向的学习与工作中的知识点笔记记录,其中不止会针对鸿蒙中的学习问题进行思考与记录,也会对涉及到的一些 ...

  6. PyTorch 学习笔记(六):PyTorch hook 和关于 PyTorch backward 过程的理解 call

    您的位置 首页 PyTorch 学习笔记系列 PyTorch 学习笔记(六):PyTorch hook 和关于 PyTorch backward 过程的理解 发布: 2017年8月4日 7,195阅读 ...

  7. 容器云原生DevOps学习笔记——第三期:从零搭建CI/CD系统标准化交付流程

    暑期实习期间,所在的技术中台-效能研发团队规划设计并结合公司开源协同实现符合DevOps理念的研发工具平台,实现研发过程自动化.标准化: 实习期间对DevOps的理解一直懵懵懂懂,最近观看了阿里专家带 ...

  8. 容器云原生DevOps学习笔记——第二期:如何快速高质量的应用容器化迁移

    暑期实习期间,所在的技术中台-效能研发团队规划设计并结合公司开源协同实现符合DevOps理念的研发工具平台,实现研发过程自动化.标准化: 实习期间对DevOps的理解一直懵懵懂懂,最近观看了阿里专家带 ...

  9. 2020年Yann Lecun深度学习笔记(下)

    2020年Yann Lecun深度学习笔记(下)

最新文章

  1. html-body标签中相关标签 02
  2. 【读书笔记-数据挖掘概念与技术】分类:高级方法
  3. emc存储java打开后报错_连接EMC存储系统 - osc_mk8rqvg4的个人空间 - OSCHINA - 中文开源技术交流社区...
  4. NOIP模拟测试49·50「养花·折射·画作·施工·蔬菜·联盟」
  5. 2020年2月全国程序员工资统计
  6. 用css和html实现的一个forest logo
  7. BZOJ 1024: [SCOI2009]生日快乐
  8. [error] eclipse编写spring等xml配置文件时只有部分提示,tx无提示
  9. 7.Prometheus 监控技术与实践 --- 可视化
  10. html制作相册影集,影集相册制作系统
  11. Dapper系列之三:Dapper的事务修改与删除
  12. 认知升级三部曲读后感想
  13. Java的环境变量在哪个文件夹_Java设置环境变量
  14. 嵌入式设备查看系统的版本、编译时间、架构等信息(uname命令)
  15. ffmpeg播放器(一) 视频解码与播放
  16. 计算机个性化的优点,个性化推荐的最大的优点
  17. star- Transformer
  18. c++生成so调用LOGI
  19. python和C++代码实现模拟动态指针时钟
  20. Web jquery ajax,EL遍历 js刷新 jquery遍历json数组填充表格 等等随笔

热门文章

  1. EasyExcel写入内容匹配不上解决方法
  2. Window7定期批处理删除指定文件且不弹出黑窗口的方法
  3. 河南省焦作市谷歌高清卫星地图下载
  4. 【区块链 | 元宇宙】元宇宙学习资源大全【2022】
  5. apk、dex、odex梳理
  6. html 右键菜单 插件,Script Menu:自定义右键菜单
  7. 刷脸支付赋予日常场景更多的功能和应用
  8. 液压油缸检测如何选用合适的的快速接头规格型号
  9. ansible启动heartbeat报错
  10. php英文插件教程,迅睿CMS 优速:百度翻译插件教程