鸿蒙学习第一课--认识目录结构

server/2024/9/23 10:25:20/

项目结构介绍

在这里插入图片描述

module.json5

src > main > module.json5:Stage模型模块配置文件。主要包含HAP包的配置信息、应用/服务在具体设备上的配置信息以及应用/服务的全局配置信息。具体的配置文件说明,详见module.json5配置文件。

在这里插入图片描述

资源分类和访问

关于src > main > resources下文件的更多信息都可以访问:
资源分类与访问

资源分类介绍

限定词目录的命名要求

开发者在创建限定词目录时,需要遵守限定词目录的命名规则。

  • 限定词的组合顺序:移动国家码_移动网络码-语言_文字_国家或地区-横竖屏-设备类型-颜色模式-屏幕密度。开发者可以根据应用的使用场景和设备特征,选择其中的一类或几类限定词组成目录名称。
  • 限定词的连接方式:语言、文字、国家或地区之间采用下划线()连接,移动国家码和移动网络码之间也采用下划线()连接,除此之外的其他限定词之间均采用中划线(-)连接。例如:zh_Hant_CN、zh_CN-car-ldpi。
  • 限定词的取值范围:每类限定词的取值必须符合限定词取值要求表中的条件,如表2。否则,将无法匹配目录中的资源文件。

详细见限定词目录的命名要求

资源组目录

资源组目类型包括element、media、profile,用于存放特定类型的资源文件。
最新去官网看,点上面链接
最新去官网看,点上面链接,还有媒体资源、音视频资源介绍

创建资源目录和资源组目录和资源文件

在对应的文件夹下右键可以创建
详细方法步骤

资源访问

更详细见资源访问

应用资源
  • 对于应用资源,在工程中,通过"$r(‘app.type.name’)"形式引用。其中,app为应用内resources目录中定义的资源;type为资源类型或资源的存放位置,取值包含“color”、“float”、“string”、“plural”、“media”;name为资源命名,由开发者定义资源时确定。(在ets文件夹下需要app开头,在resources文件下可以去掉app.)
  • 对于rawfile目录资源,通过"$rawfile(‘filename’)“形式引用。其中,filename为rawfile目录下文件的相对路径,文件名需要包含后缀,路径开头不可以以”/"开头。
  • 对于rawfile目录的descriptor,可通过资源管理的getRawFd接口引用,其返回值descriptor.fd为hap包的fd。此时,访问rawfile文件需要结合{fd,offset, length}一起使用。
系统资源

除了自定义资源,开发者也可以使用系统中预定义的资源,统一应用的视觉风格。
对于系统资源,可以通过“$r(‘sys.type.resource_id’)”的形式引用。其中,sys为系统资源;type为资源类型,取值包括“color”、“float”、“string”、“media”;resource_id为资源id。

资源匹配

应用使用某资源时,系统会根据当前设备状态优先从相匹配的限定词目录中寻找该资源。只有当resources目录中没有与设备状态匹配的限定词目录,或者在限定词目录中找不到该资源时,才会去base目录中查找。rawfile是原始文件目录,不会根据设备状态去匹配不同的资源。

学习概念

  • 了解Ability
  • 系统应用配置和三方应用配置什么意思
  • 该Module对应的Hap,Module和Hap都是啥
  • 用的entry类型Module的该字段配置为true时,该应用的feature类型的该字段也需要配置为true。什么意思?

http://www.ppmy.cn/server/46785.html

相关文章

Aras Innovator-Team(群组)的使用方法

当Aras Innovator在处理权限时,在不使用Team的情况下,系统的权限配置可以满足大部分业务场景,如:常见的按照组织架构,成员和角色分配权限,按照生命周期分配权限等。 如果遇到比较复杂的权限需求&#xff0c…

Minio的图片下载

一 为什么要写下载? 正常使用Minio的时候,其实是不用单独再写下载功能的,因为使用Minio上传的时候,可以再返回结果里带上地址,可直接点击地址进行下载,可如果现在既要预览又要下载,就需要单独写一个下载功能. 1 代码如下 Minio使用的初始化 private void init() {minioClien…

mysql的InnoDB存储引擎

概述 使用InnoDB存储引擎非常简单,因为它是MySQL的默认存储引擎。在创建表时,如果不指定存储引擎,默认情况下MySQL会使用InnoDB。 InnoDB是一个功能强大、稳定可靠的存储引擎,适合大多数需要事务支持和高并发的应用场景。通过合理的配置和优化,可以有效利用其优势,提升数…

国内半导体龙头企业的自动化转型之旅

在当今高速发展的科技时代,半导体行业正迎来前所未有的挑战与机遇。位于此浪潮前端的,是国内一家领先的半导体集成电路封装测试企业。凭借其规模和创新实力,该公司不仅在国内市场名列前茅,更是在全球半导体行业中占据了一席之地。…

堆排序-java

这次主要讲了堆排序和堆的基本构造,下一期会详细讲述堆的各种基本操作。 文章目录 前言 一、堆排序 1.题目描述 2.堆 二、算法思路 1.堆的存储 2. 结点下移down 3.结点上移up 4.堆的基本操作 5.堆的初始化 三、代码如下 1.代码如下: 2.读入数据&#xff…

TFTP服务器

软件,客户端,服务器。是简单的文件传输文件。 1.TFTP服务器介绍 是简单的文件传输协议,是tcp/IP协议的一个用来在客户端与服务器之间进行简单文件传输的协议。端口号为69。每个服务器都有自己都端口号。 2.TFTP文件传输特点 3. 二:TFTP环境…

【Linux】网络高级IO

欢迎来到Cefler的博客😁 🕌博客主页:折纸花满衣 🏠个人专栏:Linux 目录 👉🏻五种IO模型👉🏻消息通信的同步异步与进程线程的同步异步有什么不同?&#x1f449…

【UML用户指南】-05-对基本结构建模-类

在UML中,所有的事物都被建模为类。类是对词汇表中一些事物的抽象。类不是个体对象,而是描述一些对象的一个完整集合。 强调抽象的最重要的部分:名称、属性和操作 类 (class)是对一组具有相同属性、操作、关系和语义的对…