热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

鸿蒙系统的软件是什么格式

本文主要介绍关于鸿蒙系统文件是什么格式的知识点,对【鸿蒙系统文件是什么格式,鸿蒙系统资源文件分类】和【鸿蒙系统的软件是什么格式】有兴趣的朋友可以看下由【刘为龙】投稿的技术文章,希望该技术和经验能帮到你

本文主要介绍关于鸿蒙系统文件是什么格式的知识点,对【鸿蒙系统文件是什么格式,鸿蒙系统资源文件分类】和【鸿蒙系统的软件是什么格式】有兴趣的朋友可以看下由【刘为龙】投稿的技术文章,希望该技术和经验能帮到你解决你所遇的相关技术问题。

鸿蒙系统的软件是什么格式

resources目录

应用的资源文件(字符串、图片、音频等)统一存放于resources目录下,便于开发者使用和维护。resources目录包括两大类目录,一类为base目录与限定词目录,另一类为rawfile目录

资源目录示例:

resources

|---base // 默认存在的目录

| |---element

| | |---string.json

| |---media

| | |---icon.png

|---en_GB-vertical-car-mdpi // 限定词目录示例,需要开发者自行创建

| |---element

| | |---string.json

| |---media

| | |---icon.png

|---rawfile // 默认存在的目录

resources目录分类

分类

base目录与限定词目录

rawfile目录

组织形式

按照两级目录形式来组织,目录命名必须符合规范,以便根据设备状态去匹配相应目录下的资源文件。一级子目录为 base目录和 限定词目录。base目录是默认存在的目录。当应用的resources资源目录中没有与设备状态匹配的限定词目录时,会自动引用该目录中的资源文件。限定词目录需要开发者自行创建。目录名称由一个或多个表征应用场景或设备特征的限定词组合而成,具体要求参见限定词目录。二级子目录为资源目录,用于存放字符串、颜色、布尔值等基础元素,以及媒体、动画、布局等资源文件,具体要求参见资源组目录)。

支持创建多层子目录,目录名可以自定义,文件夹内可以自由放置各类资源文件。rawfile目录的文件不会根据设备状态去匹配不同的资源。

编译方式

目录中的资源文件会被编译成二进制文件,并赋予资源文件ID。

目录中的资源文件会被直接打包进应用,不经过编译,也不会被赋予资源文件 ID。

引用方式

通过文件类型(type)和资源名称(name)的组合引用。Java 文件采用:ResourceTable.type****name。特别地,如果引用的是系统资源,则采用:ohos.global.systemres.ResourceTable.typename。XML 文件采用:

math?formula=*type*%3A*name*%E3%80%82%E7%89%B9%E5%88%AB%E5%9C%B0%EF%BC%8C%E5%A6%82%E6%9E%9C%E5%BC%95%E7%94%A8%E7%9A%84%E6%98%AF%E7%B3%BB%E7%BB%9F%E8%B5%84%E6%BA%90%EF%BC%8C%E5%88%99%E9%87%87%E7%94%A8%EF%BC%9A

ohos:type:name。

通过指定文件路径和文件名来引用。例如:“resources/rawfile/example.js”。

限定词目录

限定词目录可以由一个或多个表征应用场景或设备特征的限定词组合而成,包括语言、文字、国家或地区、横竖屏、设备类型和屏幕密度等六个维度。

限定词目录的命名要求

语言文字国家或地区-横竖屏-设备类型-屏幕密度,例如:zh_Hant_CN、zh_CN-car-ldpi。

资源组目录

base目录与限定词目录下面可以创建资源组目录(包括element元素资源、media媒体资源,包括图片、音频、视频等非文本格式的文件、animation动画资源、layout布局资源、graphic可绘制资源、profile其他类型文件,以原始文件形式保存),用于存放特定类型的资源文件。

资源文件示例

boolean.json示例

{

"boolean":[

{

"name":"boolean_1",

"value":true

},

{

"name":"boolean_ref",

"value":"$boolean:boolean_1"

}

]

}

color.json示例

{

"color":[

{

"name":"red",

"value":"#ff0000"

},

{

"name":"red_ref",

"value":"$color:red"

}

]

}

float.json示例

{

"float":[

{

"name":"float_1",

"value":"30.6"

},

{

"name":"float_ref",

"value":"$float:float_1"

},

{

"name":"float_px",

"value":"100px"

}

]

}

intarray.json示例

{

"intarray":[

{

"name":"intarray_1",

"value":[

100,

200,

"$integer:integer_1"

]

}

]

}

strarray.json示例

{

"strarray":[

{

"name":"size",

"value":[

{

"value":"small"

},

{

"value":"$string:hello"

},

{

"value":"large"

},

{

"value":"extra large"

}

]

}

]

}

string.json示例

{

"string":[

{

"name":"hello",

"value":"hello base"

},

{

"name":"app_name",

"value":"my application"

},

{

"name":"app_name_ref",

"value":"$string:app_name"

},

{

"name":"app_sys_ref",

"value":"$ohos:string:request_location_reminder_title"

}

]

}

本文《鸿蒙系统文件是什么格式,鸿蒙系统资源文件分类》版权归刘为龙所有,引用鸿蒙系统文件是什么格式,鸿蒙系统资源文件分类需遵循CC 4.0 BY-SA版权协议。


推荐阅读
  • 本文介绍了RPC框架Thrift的安装环境变量配置与第一个实例,讲解了RPC的概念以及如何解决跨语言、c++客户端、web服务端、远程调用等需求。Thrift开发方便上手快,性能和稳定性也不错,适合初学者学习和使用。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • 拥抱Android Design Support Library新变化(导航视图、悬浮ActionBar)
    转载请注明明桑AndroidAndroid5.0Loollipop作为Android最重要的版本之一,为我们带来了全新的界面风格和设计语言。看起来很受欢迎࿰ ... [详细]
  • Java太阳系小游戏分析和源码详解
    本文介绍了一个基于Java的太阳系小游戏的分析和源码详解。通过对面向对象的知识的学习和实践,作者实现了太阳系各行星绕太阳转的效果。文章详细介绍了游戏的设计思路和源码结构,包括工具类、常量、图片加载、面板等。通过这个小游戏的制作,读者可以巩固和应用所学的知识,如类的继承、方法的重载与重写、多态和封装等。 ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • PHP图片截取方法及应用实例
    本文介绍了使用PHP动态切割JPEG图片的方法,并提供了应用实例,包括截取视频图、提取文章内容中的图片地址、裁切图片等问题。详细介绍了相关的PHP函数和参数的使用,以及图片切割的具体步骤。同时,还提供了一些注意事项和优化建议。通过本文的学习,读者可以掌握PHP图片截取的技巧,实现自己的需求。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • Android源码深入理解JNI技术的概述和应用
    本文介绍了Android源码中的JNI技术,包括概述和应用。JNI是Java Native Interface的缩写,是一种技术,可以实现Java程序调用Native语言写的函数,以及Native程序调用Java层的函数。在Android平台上,JNI充当了连接Java世界和Native世界的桥梁。本文通过分析Android源码中的相关文件和位置,深入探讨了JNI技术在Android开发中的重要性和应用场景。 ... [详细]
  • 本文介绍了Python爬虫技术基础篇面向对象高级编程(中)中的多重继承概念。通过继承,子类可以扩展父类的功能。文章以动物类层次的设计为例,讨论了按照不同分类方式设计类层次的复杂性和多重继承的优势。最后给出了哺乳动物和鸟类的设计示例,以及能跑、能飞、宠物类和非宠物类的增加对类数量的影响。 ... [详细]
  • 本文介绍了RxJava在Android开发中的广泛应用以及其在事件总线(Event Bus)实现中的使用方法。RxJava是一种基于观察者模式的异步java库,可以提高开发效率、降低维护成本。通过RxJava,开发者可以实现事件的异步处理和链式操作。对于已经具备RxJava基础的开发者来说,本文将详细介绍如何利用RxJava实现事件总线,并提供了使用建议。 ... [详细]
author-avatar
阳光无限好1981
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有