HarmonyOS 鸿蒙Next如何访问本模块和hsp以及hap的模块的资源
HarmonyOS 鸿蒙Next如何访问本模块和hsp以及hap的模块的资源
首先 在本模块下方面资源可以用 $r 和 $rawfile 方式引用,
对于 "color"、"float"、"string"、"plural"、"media"、"profile" 等类型的资源,通过 "$r('app.type.name')" 形式引用。其中,app 为 resources 目录中定义的资源;type 为资源类型或资源的存放位置;name 为资源名,开发者定义资源时确定。
对于 rawfile 目录资源,通过 "$rawfile('filename')" 形式引用
如果在代码中使用可以用:<strong>getContext.resourceManager.getStringByNameSync('XX')</strong> 可获取字符串资源;
跨 HAP/HSP 包应用资源
bundle 相同,跨 module 访问
首先:通过 createModuleContext(moduleName) 接口创建同应用中不同 module 的上下文,获取 resourceManager 对象后,调用不同接口访问不同资源。
通过 "$r" 或 "$rawfile" 引用资源。具体操作如下:其中 [hsp] 中的 hsp 是模块的名字
- Text(
$r('[hsp].string.test_string')) .fontSize($r('[hsp].float.font_size')).fontColor($r('[hsp].color.font_color'))- Image(
$rawfile('[hsp].icon.png')) - 备注:hsp 包名必须写在
[]内,rawfile 下有多层目录,需要从 rawfile 下面第一个目录开始写, - 如
\$rawfile('[hsp].oneFile/twoFile/icon.png'), - 使用
"$r"和"$rawfile"跨包访问 HSP 包资源无法提供编译时的资源校验,需要开发者自行保证使用资源存在于对应包中。
更多关于HarmonyOS 鸿蒙Next如何访问本模块和hsp以及hap的模块的资源的实战教程也可以访问 https://www.itying.com/category-93-b0.html
更多关于HarmonyOS 鸿蒙Next如何访问本模块和hsp以及hap的模块的资源的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS(鸿蒙)系统中,访问本模块以及HSP(HarmonyOS Service Package)和HAP(HarmonyOS Ability Package)模块的资源,通常涉及以下步骤:
-
本模块资源访问:
- 直接通过资源ID访问。在鸿蒙的Resource Table(资源表)中定义资源后,使用相应的API(如
$r或资源加载函数)访问。
- 直接通过资源ID访问。在鸿蒙的Resource Table(资源表)中定义资源后,使用相应的API(如
-
HSP模块资源访问:
- 若HSP模块已正确集成,并且资源已暴露给外部使用,可通过模块提供的接口或API访问这些资源。通常,这需要在模块间通信时,由HSP模块明确提供资源访问的接口。
-
HAP模块资源访问:
- HAP模块间的资源访问,一般通过Ability间的Intent传递资源URI或路径来实现。接收方Ability再根据URI或路径加载资源。
- 若资源是全局共享的,如存放在公共存储区域,可通过文件路径直接访问。
注意,具体实现方式可能因鸿蒙系统版本、项目架构及资源管理方式的不同而有所差异。确保遵循鸿蒙的官方文档和最佳实践进行开发。
如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html,

