• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# BundlePackInfo (System API)
2<!--Kit: Ability Kit-->
3<!--Subsystem: BundleManager-->
4<!--Owner: @wanghang904-->
5<!--Designer: @hanfeng6-->
6<!--Tester: @kongjing2-->
7<!--Adviser: @Brilliantry_Rui-->
8
9The module provides information in the **pack.info** file. The information can be obtained using [freeInstall.getBundlePackInfo](js-apis-freeInstall-sys.md#getbundlepackinfo).
10
11> **NOTE**
12>
13> The initial APIs of this module are supported since API version 9. Newly added APIs will be marked with a superscript to indicate their earliest API version.
14>
15> The APIs provided by this module are system APIs.
16
17## Modules to Import
18
19```js
20import { freeInstall } from '@kit.AbilityKit';
21```
22
23## BundlePackInfo
24
25**System API**: This is a system API.
26
27**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall
28
29| Name    | Type                                   | Read-Only| Optional| Description                     |
30| -------- | --------------------------------------- | ---- | ---- | ------------------------- |
31| packages | Array\<[PackageConfig](#packageconfig)> | Yes  | No  | Package configuration information in the **pack.info** file.      |
32| summary  | [PackageSummary](#packagesummary)       | Yes  | No  | Package summary information in the **pack.info** file.|
33
34## PackageConfig
35
36**System API**: This is a system API.
37
38**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall
39
40| Name               | Type          | Read-Only| Optional| Description                                                        |
41| ------------------- | -------------- | ---- | ---- | ------------------------------------------------------------ |
42| deviceTypes          | Array\<string> | Yes  | No  | Device types supported by the bundle.                                      |
43| name                | string         | Yes  | No  | Bundle name.                                                  |
44| moduleType          | string         | Yes  | No  | Module type of the bundle.                                            |
45| deliveryWithInstall | boolean        | Yes  | No  | Whether it should be installed together with the application. **true** if it should be installed together with the application, **false** otherwise.|
46
47## PackageSummary
48
49**System API**: This is a system API.
50
51**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall
52
53| Name   | Type                                         | Read-Only| Optional| Description                |
54| ------- | --------------------------------------------- | ---- | ---- | -------------------- |
55| app     | [BundleConfigInfo](#bundleconfiginfo)         | Yes  | No  | Bundle configuration information.      |
56| modules | Array\<[ModuleConfigInfo](#moduleconfiginfo)> | Yes  | No  | Module configuration information of the bundle.|
57
58## BundleConfigInfo
59
60**System API**: This is a system API.
61
62**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall
63
64| Name      | Type               | Read-Only| Optional| Description                                  |
65| ---------- | ------------------- | ---- | ---- | -------------------------------------- |
66| bundleName | string              | Yes  | No  | Bundle name. It uniquely identifies an application.|
67| version    | [Version](#version) | Yes  | No  | Bundle version.                            |
68
69## ModuleConfigInfo
70
71**System API**: This is a system API.
72
73**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall
74
75| Name              | Type                                             | Read-Only| Optional| Description                              |
76| ------------------ | ------------------------------------------------- | ---- | ---- | ---------------------------------- |
77| mainAbility | string | Yes| No| Name of the main ability.|
78| apiVersion         | [ApiVersion](#apiversion)                         | Yes  | No  | API version of the module.                 |
79| deviceTypes         | Array\<string>                                    | Yes  | No  | Device types supported by the module.                |
80| distro             | [ModuleDistroInfo](#moduledistroinfo)             | Yes  | No  | Distribution information of the module.                |
81| abilities          | Array\<[ModuleAbilityInfo](#moduleabilityinfo)>   | Yes  | No  | Ability information of the module.              |
82| extensionAbilities | Array\<[ExtensionAbility](#extensionability)> | Yes  | No  | ExtensionAbility information of the module.|
83
84## ModuleDistroInfo
85
86**System API**: This is a system API.
87
88**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall
89
90| Name               | Type   | Read-Only| Optional| Description                                                        |
91| ------------------- | ------- | ---- | ---- | ------------------------------------------------------------ |
92| deliveryWithInstall | boolean | Yes  | No  | Whether it should be installed together with the application. **true** if it should be installed together with the application, **false** otherwise.|
93| installationFree    | boolean | Yes  | No  | Whether the HAP file supports the installation-free feature. **true** if the HAP file supports the installation-free feature and meets installation-free constraints, **false** otherwise.|
94| moduleName          | string  | Yes  | No  | Module name.                                                |
95| moduleType          | string  | Yes  | No  | Module type.                                                |
96
97## ModuleAbilityInfo
98
99**System API**: This is a system API.
100
101**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall
102
103| Name   | Type                                       | Read-Only| Optional| Description                                                        |
104| ------- | ------------------------------------------- | ---- | ---- | ------------------------------------------------------------ |
105| name    | string                                      | Yes  | No  | Name of the ability. The name must be unique in the bundle.           |
106| label   | string                                      | Yes  | No  | Name of the ability displayed to users. The value is a resource index to names in multiple languages.|
107| exported | boolean                                     | Yes  | No  | Whether the ability can be invoked by other applications. **true** if it can be invoked by other applications, **false** otherwise.|
108| forms   | Array\<[AbilityFormInfo](#abilityforminfo)> | Yes  | No  | Widget information.                                                  |
109
110## ExtensionAbility
111
112**System API**: This is a system API.
113
114**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall
115
116| Name | Type                                       | Read-Only| Optional| Description                                                        |
117| ----- | ------------------------------------------- | ---- | ---- | ------------------------------------------------------------ |
118| name | string | Yes| No| Name of the ExtensionAbility.|
119| forms | Array\<[AbilityFormInfo](#abilityforminfo)> | Yes  | No  | Widget information.|
120
121## AbilityFormInfo
122
123**System API**: This is a system API.
124
125**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall
126
127| Name               | Type          | Read-Only| Optional| Description                                                        |
128| ------------------- | -------------- | ---- | ---- | ------------------------------------------------------------ |
129| name                | string         | Yes  | No  | Widget name.                                           |
130| type                | string         | Yes  | No  | Widget type.                                           |
131| updateEnabled       | boolean        | Yes  | No  | Whether the widget supports periodic update. **true** if the widget supports periodic update, **false** otherwise.|
132| scheduledUpdateTime | string         | Yes  | No  | Scheduled time to update the widget. The value is in 24-hour format and accurate to the minute.        |
133| updateDuration      | number         | Yes  | No  | Interval to update the widget. The unit is 30 minutes. The value is a multiple of 30. A widget can be updated at a specified interval (**updateDuration**) or at the scheduled time (**scheduledUpdateTime**). If both are configured, **updateDuration** takes precedence.|
134| supportDimensions   | Array\<string> | Yes  | No  | Dimensions of the widget. The value can be **1\*2**, **2\*2**, **2\*4**, **4\*4**, or a combination of these options. At least one option must be specified when defining the widget.|
135| defaultDimension    | string         | Yes  | No  | Default dimensions of the widget. The value must be available in the **supportDimensions** array of the widget.|
136
137## ApiVersion
138
139**System API**: This is a system API.
140
141**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall
142
143| Name       | Type  | Read-Only| Optional| Description                |
144| ----------- | ------ | ---- | ---- | -------------------- |
145| releaseType | string | Yes  | No  | Name of the API version.        |
146| compatible  | number | Yes  | No  | Minimum API version.|
147| target      | number | Yes  | No  | Target API version.        |
148
149## Version
150
151**System API**: This is a system API.
152
153**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall
154
155| Name                    | Type  | Read-Only| Optional| Description                                                        |
156| ------------------------ | ------ | ---- | ---- | ------------------------------------------------------------ |
157| minCompatibleVersionCode | number | Yes  | No  | Minimum compatible version of the bundle. It is used to check whether the bundle is compatible with a version on other devices in the cross-device scenario. The value is a 32-bit non-negative integer.|
158| name                     | string | Yes  | No  | Version number of the bundle visible to users.                      |
159| code                     | number | Yes  | No  | Version number of the bundle used only for bundle management. The value is a 32-bit non-negative integer. It is used only to determine whether a version is later than another version. A larger value indicates a later version.|
160