新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OS資源文件分類
resources目錄

應用的資源文件(字符串、圖片、音頻等)統(tǒng)一存放于resources目錄下,便于開發(fā)者使用和維護。resources目錄包括兩大類目錄,一類為base目錄與限定詞目錄,另一類為 rawfile 目錄,詳見表1。
資源目錄示例:
resources
|---base // 默認存在的目錄
| |---element
| | |---string.json
| |---media
| | |---icon.png
|---en_GB-vertical-car-mdpi // 限定詞目錄示例,需要開發(fā)者自行創(chuàng)建
| |---element
| | |---string.json
| |---media
| | |---icon.png
|---rawfile // 默認存在的目錄 表1 resources目錄分類
| 分類 | base目錄與限定詞目錄 |
rawfile目錄 |
|---|---|---|
| 組織形式 | 按照兩級目錄形式來組織,目錄命名必須符合規(guī)范,以便根據(jù)設備狀態(tài)去匹配相應目錄下的資源文件。 一級子目錄為 base目錄和 限定詞目錄。base目錄是默認存在的目錄。當應用的resources資源目錄中沒有與設備狀態(tài)匹配的限定詞目錄時,會自動引用該目錄中的資源文件。限定詞目錄需要開發(fā)者自行創(chuàng)建。目錄名稱由一個或多個表征應用場景或設備特征的限定詞組合而成,具體要求參見限定詞目錄。二級子目錄為資源目錄,用于存放字符串、顏色、布爾值等基礎元素,以及媒體、動畫、布局等資源文件,具體要求參見資源組目錄)。 | 支持創(chuàng)建多層子目錄,目錄名稱可以自定義,文件夾內(nèi)可以自由放置各類資源文件。rawfile目錄的文件不會根據(jù)設備狀態(tài)去匹配不同的資源。 |
| 編譯方式 | 目錄中的資源文件會被編譯成二進制文件,并賦予資源文件ID。 | 目錄中的資源文件會被直接打包進應用,不經(jīng)過編譯,也不會被賦予資源文件 ID。 |
| 引用方式 | 通過文件類型(type)和資源名稱(name)的組合引用。Java 文件采用:ResourceTable.*type*_****name。特別地,如果引用的是系統(tǒng)資源,則采用:ohos.global.systemres.ResourceTable.*type*_*name*。 XML 文件采用:$*type*:*name*。特別地,如果引用的是系統(tǒng)資源,則采用:$ohos:*type*:*name*。 | 通過指定文件路徑和文件名來引用。 例如:“ resources/rawfile/example.js”。 |
限定詞目錄
限定詞目錄可以由一個或多個表征應用場景或設備特征的限定詞組合而成,包括語言、文字、國家或地區(qū)、橫豎屏、設備類型和屏幕密度等六個維度,限定詞之間通過下劃線(_)或者中劃線(-)連接。開發(fā)者在創(chuàng)建限定詞目錄時,需要掌握限定詞目錄的命名要求以及與限定詞目錄與設備狀態(tài)的匹配規(guī)則。
限定詞目錄的命名**要求**
- 限定詞的組合順序:語言_文字_國家或地區(qū)-橫豎屏-設備類型-屏幕密度。開發(fā)者可以根據(jù)應用的使用場景和設備特征,選擇其中的一類或幾類限定詞組成目錄名稱。
- 限定詞的連接方式:語言、文字、國家或地區(qū)之間采用下劃線(
_)連接,除此之外的其他限定詞之間均采用中劃線(-)連接。
例如:zh_Hant_CN、zh_CN-car-ldpi。
- 限定詞的取值范圍:每類限定詞的取值必須符合表2中的條件,否則,將無法匹配目錄中的資源文件。
表2 限定詞取值要求
| 限定詞類型 | 含義與取值說明 |
|---|---|
| 語言 | 表示設備使用的語言類型,由 2個小寫字母組成。 例如: zh表示中文,en表示英語。詳細取值范圍,參見 ISO 639-1(ISO 制定的語言編碼標準)。 |
| 文字 | 表示設備使用的文字類型,由 1個大寫字母(首字母)和 3個小寫字母組成。 例如: Hans 表示簡體中文,Hant 表示繁體中文。詳細取值范圍,參見 ISO 15924(ISO 制定的文字編碼標準)。 |
| 國家或地區(qū) | 表示用戶所在的國家或地區(qū),由 2~3個大寫字母或者 3個數(shù)字組成。 例如: CN表示中國,GB表示英國。詳細取值范圍,參見 ISO 3166-1(ISO 制定的國家和地區(qū)編碼標準)。 |
| 橫豎屏 | 表示設備的屏幕方向,取值如下:vertical:豎屏horizontal:橫屏 |
| 設備類型 | 表示設備的類型,取值如下:car:車機tv:智慧屏wearable:智能穿戴 |
| 屏幕密度 | 表示設備的屏幕密度(單位為dpi),取值如下:sdpi:表示小規(guī)模的屏幕密度(Small-scale Dots Per Inch),適用于120dpi及以下的設備。mdpi:表示中規(guī)模的屏幕密度(Medium-scale Dots Per Inch),適用于120dpi~160dpi的設備。ldpi:表示大規(guī)模的屏幕密度(Large-scale Dots Per Inch),適用于160dpi~240dpi的設備。xldpi:表示特大規(guī)模的屏幕密度(Extra Large-scale Dots Per Inch),適用于240dpi~320dpi的設備。xxldpi:表示超大規(guī)模的屏幕密度(Extra Extra Large-scale Dots Per Inch),適用于320dpi~480dpi的設備。xxxldpi:表示超特大規(guī)模的屏幕密度(Extra Extra Extra Large-scale Dots Per Inch),適用于480dpi~640dpi的設備。 |
限定詞目錄與設備狀態(tài)的匹配規(guī)則
- 在為設備匹配對應的資源文件時,限定詞目錄匹配的優(yōu)先級從高到低依次為:
區(qū)域(語言_文字_國家或地區(qū))> 橫豎屏 > 設備類型 > 屏幕密度。 - 如果限定詞目錄中包含語言、文字、橫豎屏、設備類型限定詞,則對應限定詞的取值必須與當前的設備狀態(tài)完全一致,該目錄才能夠參與設備的資源匹配。例如,限定詞目錄“
zh_CN-car-ldpi”不能參與“en_US”設備的資源匹配。
資源組目錄
base目錄與限定詞目錄下面可以創(chuàng)建資源組目錄(包括element、media、animation、layout、graphic、profile),用于存放特定類型的資源文件,詳見表3。
表3 資源組目錄 說明
| 資源組目錄 | 目錄說明 | 資源文件 |
|---|---|---|
element | 表示元素資源,以下每一類數(shù)據(jù)都采用相應的 JSON 文件來表征。boolean,布爾型color,顏色float,浮點型intarray,整型數(shù)組integer,整型pattern,樣式plural,復數(shù)形式strarray,字符串數(shù)組string,字符串 | element目錄中的文件名稱建議與下面的文件名保持一致。每個文件中只能包含同一類型的數(shù)據(jù)。 boolean.json color.json float.json intarray.jsoninteger.json pattern.json plural.json strarray.jsonstring.json |
media | 表示媒體資源,包括圖片、音頻、視頻等非文本格式的文件。 | 文件名可自定義,例如:icon.png。 |
animation | 表示動畫資源,采用 XML 文件格式。 | 文件名可自定義,例如:zoom_in.xml。 |
layout | 表示布局資源,采用 XML 文件格式。 | 文件名可自定義,例如:home_layout.xml。 |
graphic | 表示可繪制資源,采用 XML 文件格式。 | 文件名可自定義,例如:notifications_dark.xml。 |
profile | 表示其他類型文件,以原始文件形式保存。 | 文件名可自定義。 |
系統(tǒng)資源文件
目前支持的系統(tǒng)資源文件詳見表4。
表4 系統(tǒng)資源文件說明
| 系統(tǒng)資源名稱 | 含義 | 類型 |
|---|---|---|
| ic_app | 表示 HarmonyOS 應用的默認圖標。 | 媒體 |
| request_location_reminder_title | 表示“請求使用設備定位功能”的提示標題。 | 字符串 |
| request_location_reminder_content | 表示“請求使用設備定位功能”的提示內(nèi)容,即:請在下拉快捷欄打開"位置信息"開關。 | 字符串 |
分享文章:創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OS資源文件分類
轉(zhuǎn)載注明:http://m.5511xx.com/article/ccdsssh.html


咨詢
建站咨詢
