鸿蒙HarmonyOS应用配置文件:module对象内部结构

module对象包含HAP的配置信息。

表1 module对象内部结构说明

属性名称 含义 数据类型 是否可缺省
mainAbility 服务中心图标露出的Ability,常驻进程拉起时会启动mainAbility。 字符串 可缺省,缺省值为空。
package 标识HAP的包结构名称,在应用内保证唯一性。采用反向域名格式(建议与HAP的工程目录保持一致)。字符串长度为1-127个字节。 字符串 不可缺省。
name 标识HAP的类名。采用反向域名方式标识,前缀要与同级的package标签指定的包名一致,也可采用"."开头的命名方式。字符串长度不超过255字节。 字符串 可缺省,缺省值为空。
description 标识HAP的描述信息。字符串长度不超过255字节。如果字符串超出长度或者需要支持多语言,可以采用资源索引的方式添加描述内容。 字符串 可缺省,缺省值为空。
supportedModes 标识应用支持的运行模式,当前只定义了驾驶模式(drive)。该标签只适用于车机。 字符串数组 可缺省,缺省值为空。
deviceType 标识允许Ability运行的设备类型。系统预定义的设备类型包括:tablet(平板)、tv(智慧屏)、car(车机)、wearable(智能穿戴)、litewearable(运动表)等。 字符串数组 不可缺省。
distro 标识HAP发布的具体描述。 对象 不可缺省。
metaData 标识HAP的元信息。 对象 可缺省,缺省值为空。
abilities 标识当前模块内的所有Ability。采用对象数据格式。 对象数组 可缺省,缺省值为空。
js 标识基于ArkUI框架开发的JS模块集合,其中的每个元素代表一个JS模块的信息。 对象数组 可缺省,缺省值为空。
shortcuts 标识应用的快捷方式信息。采用对象数组格式,其中的每个元素表示一个快捷方式对象。 对象数组 可缺省,缺省值为空。
reqPermissions 标识应用运行时向系统申请的权限。 对象数组 可缺省,缺省值为空。
colorMode

标识应用自身的颜色模式,目前支持如下三种模式:

- dark:表示按照深色模式选取资源。

- light:表示按照浅色模式选取资源。

- auto:表示跟随系统的颜色模式值选取资源。

字符串 可缺省,缺省值为"auto"。
distroFilter 该标签下的子标签均为可选字段,用于定义HAP对应的细分设备规格的分发策略,以便应用市场在云端分发HAP时做精准匹配。该标签需要配置在/resource/profile资源目录下;在进行分发时,通过deviceType与下表属性的匹配关系,唯一确定一个用于分发到设备的HAP。 对象 可缺省,缺省值为空。但当应用中包含多个entry模块时,必须配置该标签。
commonEvents 定义了公共事件静态订阅者的信息,该字段中需要声明静态订阅者的名称、权限要求及订阅事件列表信息,当订阅的公共事件发送时,该公共事件静态订阅者将被拉起。这里的静态订阅者区分于常用的动态订阅者,前者无需在业务代码中主动调用订阅事件的接口,在公共事件发布时可能未被拉起,而动态订阅者则在业务代码中主动调用公共事件订阅的相关API,因此需要应用处于活动状态。 对象数组 可缺省,缺省为空。
entryTheme 此标签标识系统内部主题的关键字。将标记值设置为名称的资源索引。 字符串 可缺省,缺省值为空。
testRunner 此标签用于支持对测试框架的配置。 对象 可缺省,缺省值为空。
generateBuildHash

标识当前HAP/HSP是否由打包工具生成哈希值。如果存在,则在系统OTA升级但应用的version下的code保持不变时,可根据哈希值判断应用是否需要升级。**

注:该字段仅对预置应用生效。** →【纯血版鸿蒙全套最新学习资料】希望这一份鸿蒙学习资料能够给大家带来帮助!~

布尔值 该标签可缺省, 缺省值为false。
libIsolation

用于区分同应用不同hap下的so文件,以防止so冲突。

- true:当前hap的so会储存在libs目录中以Module名命名的路径下。

- false:当前hap的so会直接储存在libs目录中。

布尔值 该标签可缺省, 缺省值为false。

module示例:

{
  "module": {
    "mainAbility": ".EntryAbility",
    "deviceType": [
      "default",
      "tablet"
    ],
    "abilities": [
      {
        "skills": [
          {
            "entities": [
              "entity.system.home"
            ],
            "actions": [
              "action.system.home"
            ]
          }
        ],
        "orientation": "unspecified",
        "visible": true,
        "srcPath": "EntryAbility",
        "name": ".EntryAbility",
        "srcLanguage": "ets",
        "icon": "$media:icon",
        "description": "$string:MainAbility_desc",
        "formsEnabled": false,
        "label": "$string:MainAbility_label",
        "type": "page",
        "launchType": "multiton"
      }
    ],
    "distro": {
      "moduleType": "entry",
      "installationFree": false,
      "deliveryWithInstall": true,
      "moduleName": "entry"
    },
    "package": "com.example.entry",
    "srcPath": "",
    "name": ".entry",
    "js": [
      {
        "mode": {
          "syntax": "ets",
          "type": "pageAbility"
        },
        "pages": [
          "pages/Index"
        ],
        "name": ".EntryAbility",
        "window": {
          "designWidth": 720,
          "autoDesignWidth": false
        }
      }
    ]
  }
}

distro对象内部结构

表2 distro对象内部结构说明

属性名称 含义 数据类型 是否可缺省
moduleName 标识当前HAP的名称,最大长度为31个字节。 在应用升级时,该名称允许修改,但需要应用适配Module相关数据目录的迁移,可使用文件操作接口

 →【纯血版鸿蒙全套最新学习资料】希望这一份鸿蒙学习资料能够给大家带来帮助!~

字符串 不可缺省。
moduleType 标识当前HAP的类型,包括三种类型:entry、feature和har。 字符串 不可缺省。
installationFree 标识当前HAP是否支持免安装特性。true:表示支持免安装特性,且符合免安装约束。false:表示不支持免安装特性。另外还需注意:当entry.hap该字段配置为true时,与该entry.hap相关的所有feature.hap该字段也需要配置为true。当entry.hap该字段配置为false时,与该entry.hap相关的各feature.hap该字段可按业务需求配置true或false。 布尔值 不可缺省。
deliveryWithInstall 标识当前HAP是否在用户主动安装HAP所在应用的时候一起安装。true: 安装应用时当前HAP随应用一起下载安装。false:安装应用时当前HAP并不下载安装,后续使用是按需下载。 布尔值 不可缺省。

distro示例:

"distro": {
  "moduleName": "ohos_entry",
  "moduleType": "entry",
  "installationFree": true,
  "deliveryWithInstall": true
}

metadata对象内部结构

表3 metadata对象内部结构说明

属性名称 含义 数据类型 是否可缺省
parameters 标识调用Ability时所有调用参数的元信息。每个调用参数的元信息由以下三个标签组成:description、name、type。 对象数组 可缺省,缺省值为空
results 标识Ability返回值的元信息。每个返回值的元信息由以下三个标签组成:description、name、type。 对象数组 可缺省,缺省值为空。
customizeData 该标签标识父级组件的自定义元信息,Parameters和results在application不可配。 对象数组 可缺省,缺省值为空。

parameters对象内部结构

表4 parameters对象内部结构说明

属性名称 含义 数据类型 是否可缺省
description 标识对调用参数的描述,可以是表示描述内容的字符串,也可以是对描述内容的资源索引以支持多语言。该标签最大长度为255个字节。 字符串 可缺省,缺省值为空。
name 标识调用参数的名称。该标签最大长度为255个字节。 字符串 不可缺省。
type 标识调用参数的类型,如Integer。 字符串 不可缺省。

results对象内部结构

表5 results对象内部结构说明

属性名称 含义 数据类型 是否可缺省
description 标识对返回值的描述,可以是表示描述内容的字符串,也可以是对描述内容的资源索引以支持多语言。该标签最大长度为255个字节。 字符串 可缺省,缺省值为空。
name 标识返回值的名字。该标签最大长度为255个字节。 字符串
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值