作者:阳光无限好1981 | 来源:互联网 | 2023-10-13 22:38
本文主要介绍关于鸿蒙系统文件是什么格式的知识点,对【鸿蒙系统文件是什么格式,鸿蒙系统资源文件分类】和【鸿蒙系统的软件是什么格式】有兴趣的朋友可以看下由【刘为龙】投稿的技术文章,希望该技术和经验能帮到你
本文主要介绍关于鸿蒙系统文件是什么格式的知识点,对【鸿蒙系统文件是什么格式,鸿蒙系统资源文件分类】和【鸿蒙系统的软件是什么格式】有兴趣的朋友可以看下由【刘为龙】投稿的技术文章,希望该技术和经验能帮到你解决你所遇的相关技术问题。
鸿蒙系统的软件是什么格式
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 文件采用:
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版权协议。