• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# HapModuleInfo
2<!--Kit: Ability Kit-->
3<!--Subsystem: BundleManager-->
4<!--Owner: @wanghang904-->
5<!--Designer: @hanfeng6-->
6<!--Tester: @kongjing2-->
7<!--Adviser: @Brilliantry_Rui-->
8
9HAP信息,可以通过[getBundleInfoForSelf](js-apis-bundleManager.md#bundlemanagergetbundleinfoforself)获取自身的HAP信息,其中参数[bundleFlags](js-apis-bundleManager.md#bundleflag)至少包含GET_BUNDLE_INFO_WITH_HAP_MODULE。
10
11> **说明:**
12> 本模块首批接口从API version 9 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
13
14## 导入模块
15
16```ts
17import { bundleManager } from '@kit.AbilityKit';
18```
19
20## HapModuleInfo
21
22**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
23
24| 名称                              | 类型                                                         | 只读 | 可选 | 说明                 |
25| --------------------------------- | ------------------------------------------------------------ | ---- | ---- | -------------------- |
26| name                              | string                                                       | 是   | 否   | 模块名称。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
27| icon                              | string                                                       | 是   | 否   | 当前模块入口Ability的[图标](../../quick-start/layered-image.md),取值为图标资源文件的索引,与模块配置文件中[abilities标签](../../quick-start/module-configuration-file.md#abilities标签)或[extensionAbilities标签](../../quick-start/module-configuration-file.md#extensionabilities标签)的icon字段值一致。若未配置入口Ability,则为空。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
28| iconId                            | number                                                       | 是   | 否   | 当前模块入口Ability的图标[资源id](../../quick-start/resource-categories-and-access.md#资源目录)值。若未配置入口Ability,则为空。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
29| label                             | string                                                       | 是   | 否   | 当前模块入口Ability的名称,取值为字符串资源的索引,与模块配置文件中[abilities标签](../../quick-start/module-configuration-file.md#abilities标签)或[extensionAbilities标签](../../quick-start/module-configuration-file.md#extensionabilities标签)的label字段值一致。若未配置入口Ability,则为空。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
30| labelId                           | number                                                       | 是   | 否   | 当前模块入口Ability名称的[资源id](../../quick-start/resource-categories-and-access.md#资源目录)值。若未配置入口Ability,则为空。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
31| description                       | string                                                       | 是   | 否   | 模块描述信息。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
32| descriptionId                     | number                                                       | 是   | 否   | 描述信息的资源id值。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
33| mainElementName                   | string                                                       | 是   | 否   | 当前模块的入口UIAbility名称或者ExtensionAbility名称。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
34| abilitiesInfo                     | Array\<[AbilityInfo](js-apis-bundleManager-abilityInfo.md)>         | 是   | 否   | 当前模块所有Ability的信息。通过调用[getBundleInfoForSelf](js-apis-bundleManager.md#bundlemanagergetbundleinfoforself)接口,bundleFlags参数传入GET_BUNDLE_INFO_WITH_HAP_MODULE和GET_BUNDLE_INFO_WITH_ABILITY获取。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
35| extensionAbilitiesInfo            | Array\<[ExtensionAbilityInfo](js-apis-bundleManager-extensionAbilityInfo.md)> | 是   | 否   | 当前模块所有ExtensionAbility的信息。通过调用[getBundleInfoForSelf](js-apis-bundleManager.md#bundlemanagergetbundleinfoforself)接口,bundleFlags参数传入GET_BUNDLE_INFO_WITH_HAP_MODULE和GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY获取。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
36| metadata                          | Array\<[Metadata](js-apis-bundleManager-metadata.md)>               | 是   | 否   | 当前模块的元数据。通过调用[getBundleInfoForSelf](js-apis-bundleManager.md#bundlemanagergetbundleinfoforself)接口,bundleFlags参数传入GET_BUNDLE_INFO_WITH_HAP_MODULE和GET_BUNDLE_INFO_WITH_METADATA获取。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
37| deviceTypes                       | Array\<string>                                               | 是   | 否   | 模块支持安装运行的[设备类型](../../quick-start/module-configuration-file.md#devicetypes标签)的集合。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
38| installationFree                  | boolean                                                      | 是   | 否   | 模块是否支免安装(无需用户通过应用市场显式安装),取值为true表示支持免安装,取值为false表示不支持免安装。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
39| hashValue                         | string                                                       | 是   | 否   | 模块的Hash值。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
40| type                              | [bundleManager.ModuleType](js-apis-bundleManager.md#moduletype)            | 是   | 否   | 标识当前模块的类型。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
41| preloads                          | Array\<[PreloadItem](#preloaditem)>                          | 是   | 否   | 原子化服务中模块的预加载列表。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
42| dependencies                      | Array\<[Dependency](#dependency)>                            | 是   | 否   | 模块运行依赖的动态共享库列表。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
43| fileContextMenuConfig<sup>11+</sup>     | string                                                       | 是   | 否   | 模块的文件菜单配置。通过调用[getBundleInfoForSelf](js-apis-bundleManager.md#bundlemanagergetbundleinfoforself)接口,bundleFlags参数传入GET_BUNDLE_INFO_WITH_HAP_MODULE和GET_BUNDLE_INFO_WITH_MENU获取。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
44| routerMap<sup>12+</sup>           | Array\<[RouterItem](#routeritem12)>                            | 是   | 否   | [模块的路由表配置](../../quick-start/module-configuration-file.md#routermap标签)。通过调用[getBundleInfoForSelf](js-apis-bundleManager.md#bundlemanagergetbundleinfoforself)接口,bundleFlags参数传入GET_BUNDLE_INFO_WITH_HAP_MODULE和GET_BUNDLE_INFO_WITH_ROUTER_MAP获取。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 |
45| codePath<sup>12+</sup>            | string                                                       | 是   | 否   | 模块的安装路径。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 |
46| nativeLibraryPath<sup>12+</sup>     | string                                                       | 是   | 否   | 应用程序内模块本地库文件路径。                    |
47
48## PreloadItem
49
50描述原子化服务中模块的预加载模块信息。
51
52**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
53
54**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
55
56| 名称      | 类型           | 只读 | 可选 | 说明                        |
57| --------- | -------------- | ---- | ---- | --------------------------- |
58|moduleName | string         | 是   | 否   | 模块名称。|
59
60## Dependency
61
62描述模块所依赖的动态共享库信息。
63
64**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
65
66**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
67
68| 名称        | 类型   | 只读 | 可选 | 说明                   |
69| ----------- | ------ | ---- | ---- | ---------------------- |
70| bundleName<sup>10+</sup>  | string | 是   | 否   | 标识当前模块依赖的共享包包名。       |
71| moduleName  | string | 是   | 否   | 标识当前模块依赖的共享包模块名。 |
72| versionCode<sup>10+</sup> | number | 是   | 否   | 标识当前共享包的版本号。   |
73
74## RouterItem<sup>12+</sup>
75
76描述模块配置的路由表信息。
77
78**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
79
80**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
81
82| 名称           | 类型   | 只读 | 可选 | 说明                   |
83| ------------- | ------ | ---- | ---- | ---------------------- |
84| name          | string | 是   | 否   | 标识跳转页面的名称。       |
85| pageSourceFile| string | 是   | 否   | 标识页面在模块内的路径。   |
86| buildFunction | string | 是   | 否   | 标识被@Builder修饰的函数,该函数描述页面的UI。   |
87| data          | Array\<[DataItem](#dataitem12)> | 是   | 否   | 标识[路由表配置文件](../../quick-start/module-configuration-file.md#routermap标签)中的字符串自定义数据,即data字段的信息,该字段已由系统解析,无需开发者自行解析。   |
88| customData    | string | 是   | 否   | 标识[路由表配置文件](../../quick-start/module-configuration-file.md#routermap标签)中的任意类型的自定义数据,即customData字段的JSON字符串,开发者需要调用JSON.parse函数解析出具体内容。   |
89
90## DataItem<sup>12+</sup>
91
92描述模块配置的路由表中的自定义数据。
93
94**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
95
96**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
97
98| 名称          | 类型    | 只读 | 可选 | 说明                   |
99| ------------- | ------ | ---- | ---- | ---------------------- |
100| key           | string | 是   | 否   | 标识路由表自定义数据的键。       |
101| value         | string | 是   | 否   | 标识路由表自定义数据的值。 |
102