1# BundlePackInfo (系统接口)
2
3应用包信息,通过接口[freeInstall.getBundlePackInfo](js-apis-freeInstall-sys.md#getbundlepackinfo)获取。
4
5> **说明:**
6>
7> 本模块首批接口从API version 9 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8>
9> 本模块为系统接口。
10
11## BundlePackInfo
12
13**系统接口:** 此接口为系统接口。
14
15**系统能力:** SystemCapability.BundleManager.BundleFramework.FreeInstall
16
17
18| 名称     | 类型                                    | 只读 | 可选 | 说明                      |
19| -------- | --------------------------------------- | ---- | ---- | ------------------------- |
20| packages | Array\<[PackageConfig](#packageconfig)> | 是   | 否   | pack.info的包信息。       |
21| summary  | [PackageSummary](#packagesummary)       | 是   | 否   | pack.info中的包摘要信息。 |
22
23## PackageConfig
24
25**系统接口:** 此接口为系统接口。
26
27**系统能力:** SystemCapability.BundleManager.BundleFramework.FreeInstall
28
29| 名称                | 类型           | 只读 | 可选 | 说明                                                         |
30| ------------------- | -------------- | ---- | ---- | ------------------------------------------------------------ |
31| deviceTypes          | Array\<string> | 是   | 否   | 包支持的设备类型。                                       |
32| name                | string         | 是   | 否   | 包的名称。                                                   |
33| moduleType          | string         | 是   | 否   | 包的module类型。                                             |
34| deliveryWithInstall | boolean        | 是   | 否   | 是否在用户主动安装的时候安装,true表示主动安装时安装,false表示主动安装时不安装。 |
35
36## PackageSummary
37
38**系统接口:** 此接口为系统接口。
39
40**系统能力:** SystemCapability.BundleManager.BundleFramework.FreeInstall
41
42| 名称    | 类型                                          | 只读 | 可选 | 说明                 |
43| ------- | --------------------------------------------- | ---- | ---- | -------------------- |
44| app     | [BundleConfigInfo](#bundleconfiginfo)         | 是   | 否   | 包的配置信息。       |
45| modules | Array\<[ModuleConfigInfo](#moduleconfiginfo)> | 是   | 否   | 包的module配置信息。 |
46
47## BundleConfigInfo
48
49**系统接口:** 此接口为系统接口。
50
51**系统能力:** SystemCapability.BundleManager.BundleFramework.FreeInstall
52
53| 名称       | 类型                | 只读 | 可选 | 说明                                   |
54| ---------- | ------------------- | ---- | ---- | -------------------------------------- |
55| bundleName | string              | 是   | 否   | 应用Bundle名称,用于标识应用的唯一性。 |
56| version    | [Version](#version) | 是   | 否   | 包的版本。                             |
57
58## ModuleConfigInfo
59
60**系统接口:** 此接口为系统接口。
61
62**系统能力:** SystemCapability.BundleManager.BundleFramework.FreeInstall
63
64| 名称               | 类型                                              | 只读 | 可选 | 说明                               |
65| ------------------ | ------------------------------------------------- | ---- | ---- | ---------------------------------- |
66| mainAbility | string | 是 | 否 | 应用主ability的名称。 |
67| apiVersion         | [ApiVersion](#apiversion)                         | 是   | 否   | module的api版本。                  |
68| deviceTypes         | Array\<string>                                    | 是   | 否   | module的设备类型。                 |
69| distro             | [ModuleDistroInfo](#moduledistroinfo)             | 是   | 否   | module发行版信息。                 |
70| abilities          | Array\<[ModuleAbilityInfo](#moduleabilityinfo)>   | 是   | 否   | module包含的ability组件信息。               |
71| extensionAbilities | Array\<[ExtensionAbility](#extensionability)> | 是   | 否   | 描述extensionAbilities的配置信息。 |
72
73## ModuleDistroInfo
74
75**系统接口:** 此接口为系统接口。
76
77**系统能力:** SystemCapability.BundleManager.BundleFramework.FreeInstall
78
79| 名称                | 类型    | 只读 | 可选 | 说明                                                         |
80| ------------------- | ------- | ---- | ---- | ------------------------------------------------------------ |
81| deliveryWithInstall | boolean | 是   | 否   | 是否在用户主动安装的时候安装,true表示主动安装时安装,false表示主动安装时不安装。 |
82| installationFree    | boolean | 是   | 否   | 表示当前HAP是否支持免安装特性。true表示支持免安装特性,且符合免安装约束,false表示不支持免安装特性。 |
83| moduleName          | string  | 是   | 否   | module名称。                                                 |
84| moduleType          | string  | 是   | 否   | module类型。                                                 |
85
86## ModuleAbilityInfo
87
88**系统接口:** 此接口为系统接口。
89
90**系统能力:** SystemCapability.BundleManager.BundleFramework.FreeInstall
91
92| 名称    | 类型                                        | 只读 | 可选 | 说明                                                         |
93| ------- | ------------------------------------------- | ---- | ---- | ------------------------------------------------------------ |
94| name    | string                                      | 是   | 否   | 表示当前ability的名称,该名称在整个应用要唯一。            |
95| label   | string                                      | 是   | 否   | 表示ability对用户显示的名称,标签值配置为该名称的资源索引以支持多语言。 |
96| exported | boolean                                     | 是   | 否   | 表示ability是否可以被其它应用调用,true表示可以被其它应用调用,false表示不可以被其它应用调用。 |
97| forms   | Array\<[AbilityFormInfo](#abilityforminfo)> | 是   | 否   | 卡片信息。                                                   |
98
99## ExtensionAbility
100
101**系统接口:** 此接口为系统接口。
102
103**系统能力:** SystemCapability.BundleManager.BundleFramework.FreeInstall
104
105| 名称  | 类型                                        | 只读 | 可选 | 说明                                                         |
106| ----- | ------------------------------------------- | ---- | ---- | ------------------------------------------------------------ |
107| name | string | 是 | 否 | 表示该ExtensionAbility的名称 |
108| forms | Array\<[AbilityFormInfo](#abilityforminfo)> | 是   | 否   | 表示form卡片的规格,form卡片是可以嵌入桌面上并接收定时更新的应用简要视图。 |
109
110## AbilityFormInfo
111
112**系统接口:** 此接口为系统接口。
113
114**系统能力:** SystemCapability.BundleManager.BundleFramework.FreeInstall
115
116| 名称                | 类型           | 只读 | 可选 | 说明                                                         |
117| ------------------- | -------------- | ---- | ---- | ------------------------------------------------------------ |
118| name                | string         | 是   | 否   | 表示forms的名称。                                            |
119| type                | string         | 是   | 否   | 表示forms的类型。                                            |
120| updateEnabled       | boolean        | 是   | 否   | 表示该卡片是否支持定时刷新,true表示卡片支持定时刷新,false表示不支持。 |
121| scheduledUpdateTime | string         | 是   | 否   | 表示卡片定点刷新的时间,采用24小时计数,精确到分钟。         |
122| updateDuration      | number         | 是   | 否   | 表示卡片定时刷新的更新频率,单位为30分钟,取值为30的倍数值。卡片的最高频率为每30分钟刷新一次,和定点刷新二选一,二者都配置的情况下,定时优先。 |
123| supportDimensions   | Array\<string> | 是   | 否   | 表示卡片外观规格,取值为“1\*2”,“2\*2”,“2\*4”,“4\*4”,定义卡片时至少要指定一个卡片规格。 |
124| defaultDimension    | string         | 是   | 否   | 表示卡片默认外观规格,取值必须在supportDimensions配置的列表中。 |
125
126## ApiVersion
127
128**系统接口:** 此接口为系统接口。
129
130**系统能力:** SystemCapability.BundleManager.BundleFramework.FreeInstall
131
132| 名称        | 类型   | 只读 | 可选 | 说明                 |
133| ----------- | ------ | ---- | ---- | -------------------- |
134| releaseType | string | 是   | 否   | 版本的名称。         |
135| compatible  | number | 是   | 否   | 版本的最小兼容代码。 |
136| target      | number | 是   | 否   | 目标版本号。         |
137
138## Version
139
140**系统接口:** 此接口为系统接口。
141
142**系统能力:** SystemCapability.BundleManager.BundleFramework.FreeInstall
143
144| 名称                     | 类型   | 只读 | 可选 | 说明                                                         |
145| ------------------------ | ------ | ---- | ---- | ------------------------------------------------------------ |
146| minCompatibleVersionCode | number | 是   | 否   | 能够兼容的最低历史版本号,用于跨设备兼容性判断。该值为32位整型数值,非负整数。 |
147| name                     | string | 是   | 否   | 标识版本号的文字描述,用于向用户展示。                       |
148| code                     | number | 是   | 否   | 标识应用的版本号,值为32位非负整数。此数字仅用于确定某个版本是否比另一个版本更新,数值越大表示版本越高。 |
149