1e41f4b71Sopenharmony_ci# BundlePackInfo (System API) 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ciThe **BundlePackInfo** module provides information in the **pack.info** file. The information can be obtained using [freeInstall.getBundlePackInfo](js-apis-freeInstall-sys.md#getbundlepackinfo). 4e41f4b71Sopenharmony_ci 5e41f4b71Sopenharmony_ci> **NOTE** 6e41f4b71Sopenharmony_ci> 7e41f4b71Sopenharmony_ci> 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. 8e41f4b71Sopenharmony_ci> 9e41f4b71Sopenharmony_ci> The APIs provided by this module are system APIs. 10e41f4b71Sopenharmony_ci 11e41f4b71Sopenharmony_ci## BundlePackInfo 12e41f4b71Sopenharmony_ci 13e41f4b71Sopenharmony_ci**System API**: This is a system API. 14e41f4b71Sopenharmony_ci 15e41f4b71Sopenharmony_ci**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall 16e41f4b71Sopenharmony_ci 17e41f4b71Sopenharmony_ci 18e41f4b71Sopenharmony_ci| Name | Type | Read-Only| Optional| Description | 19e41f4b71Sopenharmony_ci| -------- | --------------------------------------- | ---- | ---- | ------------------------- | 20e41f4b71Sopenharmony_ci| packages | Array\<[PackageConfig](#packageconfig)> | Yes | No | Package configuration information in the **pack.info** file. | 21e41f4b71Sopenharmony_ci| summary | [PackageSummary](#packagesummary) | Yes | No | Package summary information in the **pack.info** file.| 22e41f4b71Sopenharmony_ci 23e41f4b71Sopenharmony_ci## PackageConfig 24e41f4b71Sopenharmony_ci 25e41f4b71Sopenharmony_ci**System API**: This is a system API. 26e41f4b71Sopenharmony_ci 27e41f4b71Sopenharmony_ci**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall 28e41f4b71Sopenharmony_ci 29e41f4b71Sopenharmony_ci| Name | Type | Read-Only| Optional| Description | 30e41f4b71Sopenharmony_ci| ------------------- | -------------- | ---- | ---- | ------------------------------------------------------------ | 31e41f4b71Sopenharmony_ci| deviceTypes | Array\<string> | Yes | No | Device types supported by the bundle. | 32e41f4b71Sopenharmony_ci| name | string | Yes | No | Bundle name. | 33e41f4b71Sopenharmony_ci| moduleType | string | Yes | No | Module type of the bundle. | 34e41f4b71Sopenharmony_ci| deliveryWithInstall | boolean | Yes | No | Whether the HAP file will be installed when the user installs the bundle. The value **true** means that the HAP file will be automatically installed when the user installs the bundle, and **false** means the opposite.| 35e41f4b71Sopenharmony_ci 36e41f4b71Sopenharmony_ci## PackageSummary 37e41f4b71Sopenharmony_ci 38e41f4b71Sopenharmony_ci**System API**: This is a system API. 39e41f4b71Sopenharmony_ci 40e41f4b71Sopenharmony_ci**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall 41e41f4b71Sopenharmony_ci 42e41f4b71Sopenharmony_ci| Name | Type | Read-Only| Optional| Description | 43e41f4b71Sopenharmony_ci| ------- | --------------------------------------------- | ---- | ---- | -------------------- | 44e41f4b71Sopenharmony_ci| app | [BundleConfigInfo](#bundleconfiginfo) | Yes | No | Bundle configuration information. | 45e41f4b71Sopenharmony_ci| modules | Array\<[ModuleConfigInfo](#moduleconfiginfo)> | Yes | No | Module configuration information of the bundle.| 46e41f4b71Sopenharmony_ci 47e41f4b71Sopenharmony_ci## BundleConfigInfo 48e41f4b71Sopenharmony_ci 49e41f4b71Sopenharmony_ci**System API**: This is a system API. 50e41f4b71Sopenharmony_ci 51e41f4b71Sopenharmony_ci**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall 52e41f4b71Sopenharmony_ci 53e41f4b71Sopenharmony_ci| Name | Type | Read-Only| Optional| Description | 54e41f4b71Sopenharmony_ci| ---------- | ------------------- | ---- | ---- | -------------------------------------- | 55e41f4b71Sopenharmony_ci| bundleName | string | Yes | No | Bundle name. It uniquely identifies an application.| 56e41f4b71Sopenharmony_ci| version | [Version](#version) | Yes | No | Bundle version. | 57e41f4b71Sopenharmony_ci 58e41f4b71Sopenharmony_ci## ModuleConfigInfo 59e41f4b71Sopenharmony_ci 60e41f4b71Sopenharmony_ci**System API**: This is a system API. 61e41f4b71Sopenharmony_ci 62e41f4b71Sopenharmony_ci**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall 63e41f4b71Sopenharmony_ci 64e41f4b71Sopenharmony_ci| Name | Type | Read-Only| Optional| Description | 65e41f4b71Sopenharmony_ci| ------------------ | ------------------------------------------------- | ---- | ---- | ---------------------------------- | 66e41f4b71Sopenharmony_ci| mainAbility | string | Yes| No| Name of the main ability.| 67e41f4b71Sopenharmony_ci| apiVersion | [ApiVersion](#apiversion) | Yes | No | API version of the module. | 68e41f4b71Sopenharmony_ci| deviceTypes | Array\<string> | Yes | No | Device types supported by the module. | 69e41f4b71Sopenharmony_ci| distro | [ModuleDistroInfo](#moduledistroinfo) | Yes | No | Distribution information of the module. | 70e41f4b71Sopenharmony_ci| abilities | Array\<[ModuleAbilityInfo](#moduleabilityinfo)> | Yes | No | Ability information of the module. | 71e41f4b71Sopenharmony_ci| extensionAbilities | Array\<[ExtensionAbility](#extensionability)> | Yes | No | ExtensionAbility information of the module.| 72e41f4b71Sopenharmony_ci 73e41f4b71Sopenharmony_ci## ModuleDistroInfo 74e41f4b71Sopenharmony_ci 75e41f4b71Sopenharmony_ci**System API**: This is a system API. 76e41f4b71Sopenharmony_ci 77e41f4b71Sopenharmony_ci**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall 78e41f4b71Sopenharmony_ci 79e41f4b71Sopenharmony_ci| Name | Type | Read-Only| Optional| Description | 80e41f4b71Sopenharmony_ci| ------------------- | ------- | ---- | ---- | ------------------------------------------------------------ | 81e41f4b71Sopenharmony_ci| deliveryWithInstall | boolean | Yes | No | Whether the HAP file will be installed when the user installs the bundle. The value **true** means that the HAP file will be automatically installed when the user installs the bundle, and **false** means the opposite.| 82e41f4b71Sopenharmony_ci| installationFree | boolean | Yes | No | Whether the HAP file supports the installation-free feature. The value **true** means that the HAP file supports the installation-free feature and meets installation-free constraints, and **false** means the opposite.| 83e41f4b71Sopenharmony_ci| moduleName | string | Yes | No | Module name. | 84e41f4b71Sopenharmony_ci| moduleType | string | Yes | No | Module type. | 85e41f4b71Sopenharmony_ci 86e41f4b71Sopenharmony_ci## ModuleAbilityInfo 87e41f4b71Sopenharmony_ci 88e41f4b71Sopenharmony_ci**System API**: This is a system API. 89e41f4b71Sopenharmony_ci 90e41f4b71Sopenharmony_ci**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall 91e41f4b71Sopenharmony_ci 92e41f4b71Sopenharmony_ci| Name | Type | Read-Only| Optional| Description | 93e41f4b71Sopenharmony_ci| ------- | ------------------------------------------- | ---- | ---- | ------------------------------------------------------------ | 94e41f4b71Sopenharmony_ci| name | string | Yes | No | Name of the ability. The name must be unique in the bundle. | 95e41f4b71Sopenharmony_ci| label | string | Yes | No | Name of the ability displayed to users. The value is a resource index to names in multiple languages.| 96e41f4b71Sopenharmony_ci| exported | boolean | Yes | No | Whether the ability can be called by other bundles. The value **true** means that the ability can be called by other bundles, and **false** means the opposite.| 97e41f4b71Sopenharmony_ci| forms | Array\<[AbilityFormInfo](#abilityforminfo)> | Yes | No | Widget information. | 98e41f4b71Sopenharmony_ci 99e41f4b71Sopenharmony_ci## ExtensionAbility 100e41f4b71Sopenharmony_ci 101e41f4b71Sopenharmony_ci**System API**: This is a system API. 102e41f4b71Sopenharmony_ci 103e41f4b71Sopenharmony_ci**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall 104e41f4b71Sopenharmony_ci 105e41f4b71Sopenharmony_ci| Name | Type | Read-Only| Optional| Description | 106e41f4b71Sopenharmony_ci| ----- | ------------------------------------------- | ---- | ---- | ------------------------------------------------------------ | 107e41f4b71Sopenharmony_ci| name | string | Yes| No| Name of the ExtensionAbility.| 108e41f4b71Sopenharmony_ci| forms | Array\<[AbilityFormInfo](#abilityforminfo)> | Yes | No | Widget information.| 109e41f4b71Sopenharmony_ci 110e41f4b71Sopenharmony_ci## AbilityFormInfo 111e41f4b71Sopenharmony_ci 112e41f4b71Sopenharmony_ci**System API**: This is a system API. 113e41f4b71Sopenharmony_ci 114e41f4b71Sopenharmony_ci**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall 115e41f4b71Sopenharmony_ci 116e41f4b71Sopenharmony_ci| Name | Type | Read-Only| Optional| Description | 117e41f4b71Sopenharmony_ci| ------------------- | -------------- | ---- | ---- | ------------------------------------------------------------ | 118e41f4b71Sopenharmony_ci| name | string | Yes | No | Widget name. | 119e41f4b71Sopenharmony_ci| type | string | Yes | No | Widget type. | 120e41f4b71Sopenharmony_ci| updateEnabled | boolean | Yes | No | Whether the widget supports periodic update. The value **true** means that the widget supports periodic update, and **false** means the opposite.| 121e41f4b71Sopenharmony_ci| scheduledUpdateTime | string | Yes | No | Scheduled time to update the widget. The value is in 24-hour format and accurate to the minute. | 122e41f4b71Sopenharmony_ci| 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.| 123e41f4b71Sopenharmony_ci| 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.| 124e41f4b71Sopenharmony_ci| defaultDimension | string | Yes | No | Default dimensions of the widget. The value must be available in the **supportDimensions** array of the widget.| 125e41f4b71Sopenharmony_ci 126e41f4b71Sopenharmony_ci## ApiVersion 127e41f4b71Sopenharmony_ci 128e41f4b71Sopenharmony_ci**System API**: This is a system API. 129e41f4b71Sopenharmony_ci 130e41f4b71Sopenharmony_ci**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall 131e41f4b71Sopenharmony_ci 132e41f4b71Sopenharmony_ci| Name | Type | Read-Only| Optional| Description | 133e41f4b71Sopenharmony_ci| ----------- | ------ | ---- | ---- | -------------------- | 134e41f4b71Sopenharmony_ci| releaseType | string | Yes | No | Name of the API version. | 135e41f4b71Sopenharmony_ci| compatible | number | Yes | No | Minimum API version.| 136e41f4b71Sopenharmony_ci| target | number | Yes | No | Target API version. | 137e41f4b71Sopenharmony_ci 138e41f4b71Sopenharmony_ci## Version 139e41f4b71Sopenharmony_ci 140e41f4b71Sopenharmony_ci**System API**: This is a system API. 141e41f4b71Sopenharmony_ci 142e41f4b71Sopenharmony_ci**System capability**: SystemCapability.BundleManager.BundleFramework.FreeInstall 143e41f4b71Sopenharmony_ci 144e41f4b71Sopenharmony_ci| Name | Type | Read-Only| Optional| Description | 145e41f4b71Sopenharmony_ci| ------------------------ | ------ | ---- | ---- | ------------------------------------------------------------ | 146e41f4b71Sopenharmony_ci| 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.| 147e41f4b71Sopenharmony_ci| name | string | Yes | No | Version number of the bundle visible to users. | 148e41f4b71Sopenharmony_ci| 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.| 149