热门标签 | 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版权协议。


推荐阅读
  • Python 中 json.dumps() 和 json.loads() 的使用方法详解——Python 面试与 JavaScript 面试必备知识
    在 Python 中,`json.dumps()` 和 `json.loads()` 是处理 JSON 数据的核心函数。`json.dumps()` 用于将字典或其他可序列化对象转换为 JSON 格式的字符串,而 `json.loads()` 则用于将 JSON 字符串解析为 Python 对象。本文详细介绍了这两个函数的使用方法及其在 Python 和 JavaScript 面试中的重要性,帮助读者掌握这些关键技能。 ... [详细]
  • 《精通 jQuery》第六章:深入解析与实战应用
    《精通 jQuery》第六章:深入解析与实战应用本章详细探讨了 Ajax 技术的核心机制及其实际应用。Ajax 通过 XMLHttpRequest 对象实现客户端与服务器之间的异步数据交换,从而在不重新加载整个页面的情况下更新部分内容。这种技术不仅提升了用户体验,还提高了应用的响应速度和效率。此外,本章还介绍了如何利用 jQuery 简化 Ajax 操作,并提供了多个实战案例,帮助读者更好地理解和掌握这一重要技术。 ... [详细]
  • 设计实战 | 10个Kotlin项目深度解析:首页模块开发详解
    设计实战 | 10个Kotlin项目深度解析:首页模块开发详解 ... [详细]
  • 本文探讨了Android系统中支持的图像格式及其在不同版本中的兼容性问题,重点涵盖了存储、HTTP传输、相机功能以及SparseArray的应用。文章详细分析了从Android 10 (API 29) 到Android 11 的存储规范变化,并讨论了这些变化对图像处理的影响。此外,还介绍了如何通过系统升级和代码优化来解决版本兼容性问题,以确保应用程序在不同Android版本中稳定运行。 ... [详细]
  • 利用树莓派畅享落网电台音乐体验
    最近重新拾起了闲置已久的树莓派,这台小巧的开发板已经沉寂了半年多。上个月闲暇时间较多,我决定将其重新启用。恰逢落网电台进行了改版,回忆起之前在树莓派论坛上看到有人用它来播放豆瓣音乐,便萌生了同样的想法。通过一番调试,终于实现了在树莓派上流畅播放落网电台音乐的功能,带来了全新的音乐享受体验。 ... [详细]
  • 在处理遗留数据库的映射时,反向工程是一个重要的初始步骤。由于实体模式已经在数据库系统中存在,Hibernate 提供了自动化工具来简化这一过程,帮助开发人员快速生成持久化类和映射文件。通过反向工程,可以显著提高开发效率并减少手动配置的错误。此外,该工具还支持对现有数据库结构进行分析,自动生成符合 Hibernate 规范的配置文件,从而加速项目的启动和开发周期。 ... [详细]
  • 捕获并处理用户输入数字时的异常,提供详细的错误提示与指导
    在用户输入数字时,程序能够有效捕获并处理各种异常情况,如非法字符或格式错误,并提供详尽的错误提示和操作指导,确保用户能够准确输入有效的数字数据。通过这种方式,不仅提高了程序的健壮性和用户体验,还减少了因输入错误导致的系统故障。具体实现中,使用了Java的异常处理机制,结合Scanner类进行输入读取和验证,确保了输入的合法性和准确性。 ... [详细]
  • Redis哈希数据结构入门指南
    Redis的哈希数据结构与Java中的HashMap类似,采用数组加链表的方式实现。数组用于存储哈希值的位置,而链表则用于处理哈希冲突的情况。此外,Redis的哈希数据结构还支持高效的字段操作和内存优化,适用于多种应用场景,如缓存和会话管理。 ... [详细]
  • Node.js 配置文件管理方法详解与最佳实践
    本文详细介绍了 Node.js 中配置文件管理的方法与最佳实践,涵盖常见的配置文件格式及其优缺点,并提供了多种实用技巧和示例代码,帮助开发者高效地管理和维护项目配置,具有较高的参考价值。 ... [详细]
  • 本文全面解析了 gRPC 的基础知识与高级应用,从 helloworld.proto 文件入手,详细阐述了如何定义服务接口。例如,`Greeter` 服务中的 `SayHello` 方法,该方法在客户端和服务器端的消息交互中起到了关键作用。通过实例代码,读者可以深入了解 gRPC 的工作原理及其在实际项目中的应用。 ... [详细]
  • HDU1176:免费馅饼问题的动态规划解法分析
    题目“免费馅饼”通过动态规划方法进行了解析。该问题的时间限制为 Java 2000ms 和其他语言 1000ms,内存限制为 Java 65536K 和其他语言 32768K。本文详细探讨了如何利用动态规划算法高效求解此问题,并对算法的时间复杂度和空间复杂度进行了深入分析。此外,还提供了具体的实现步骤和代码示例,帮助读者更好地理解和应用这一方法。 ... [详细]
  • 本文探讨了利用Java实现WebSocket实时消息推送技术的方法。与传统的轮询、长连接或短连接等方案相比,WebSocket提供了一种更为高效和低延迟的双向通信机制。通过建立持久连接,服务器能够主动向客户端推送数据,从而实现真正的实时消息传递。此外,本文还介绍了WebSocket在实际应用中的优势和应用场景,并提供了详细的实现步骤和技术细节。 ... [详细]
  • 在 Windows 10 环境中,通过配置 Visual Studio Code (VSCode) 实现基于 Windows Subsystem for Linux (WSL) 的 C++ 开发,并启用智能代码提示功能。具体步骤包括安装 VSCode 及其相关插件,如 CCIntelliSense、TabNine 和 BracketPairColorizer,确保在 WSL 中顺利进行开发工作。此外,还详细介绍了如何在 Windows 10 中启用和配置 WSL,以实现无缝的跨平台开发体验。 ... [详细]
  • Go 项目中数据库配置文件的优化与应用 ... [详细]
  • 优化后的标题:深入解析09版Jedis客户端
    深入解析09版Jedis客户端,本文将详细介绍如何在Java项目中正确配置Jedis以操作Redis。首先,确保项目的JDK版本和编译器设置正确。接着,通过Maven或Gradle导入必要的依赖项,如 `redis.clients:jedis`。此外,文章还将探讨Jedis连接池的配置与优化,以及常见问题的解决方案,帮助开发者高效使用Jedis进行Redis操作。 ... [详细]
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社区 版权所有