HarmonyOS 鸿蒙Next中如何使用子模块中的静态资源

HarmonyOS 鸿蒙Next中如何使用子模块中的静态资源 因跨端及跨app使用同一套配置文件的需求,需要在项目中导入配置文件的子模块,其中仅有json文件,无项目结构,在安卓中可以用sourceSets的方法,在鸿蒙中怎么处理呢

sourceSets {
    main {
        // 直接将subModule/files作为assets源目录
        assets.srcDirs += ['../config/files']
    }
}
4 回复

将静态资源的subModule直接放在entry的rawfile里了,这样最省事

更多关于HarmonyOS 鸿蒙Next中如何使用子模块中的静态资源的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS Next中,子模块静态资源需通过$r方法引用。首先在模块的resources目录下存放资源文件,如图片、字符串等。然后在代码中使用$r(‘app.type.name’)格式加载,其中type为资源类型(如media、string),name为资源名称。确保模块已在主模块的build-profile.json5中正确配置依赖。资源访问路径基于模块资源索引自动生成。

在HarmonyOS Next中,可以通过在模块级 build-profile.json5 文件中配置 resourceOverlay 来实现类似功能。具体操作如下:

  1. 在子模块目录中创建 resources 文件夹,将 JSON 文件放入其中
  2. 在主模块的 build-profile.json5 中添加:
"resourceOverlay": {
  "subModulePath": "./config/files"
}
  1. 构建时系统会自动将子模块的静态资源合并到主模块资源中

这样配置后,即可通过 ResourceManager 正常访问这些 JSON 文件。此方法支持跨模块资源复用,且符合鸿蒙的资源管理规范。

回到顶部