1# Bundle Manager Subsystem Changelog 2## cl.bundlemanager.1 Bottom-Layer Capability Changed So That Only the System Resource HAP Supports Custom Permissions 3 4Only the system resource HAP supports custom permissions. During HAP parsing, the bundle manager module parses the **definePermissions** field only in the configuration file of the resource HAP (bundle name: **ohos.global.systemres**), but not this field in other HAPs. This field is used to define permissions. 5If an application requires custom permissions, add the permissions under the **definePermissions** field in the [configuration file](https://gitee.com/openharmony/utils_system_resources/blob/master/systemres/main/config.json) of the system resource HAP. For details about the permission format, see [Defining Permissions](../../../application-dev/quick-start/module-structure.md#internal-structure-of-the-definepermissions-attribute). 6 7 8**Change Impact**<br> 9After an upgrade to the new version image, the custom permission of the application does not take effect, and the authorization fails. 10 11**Key API/Component Changes**<br> 12The bottom-layer capability of the bundle manager module is changed. Only the system resource HAP supports custom permissions. 13 14**Adaptation Guide**<br> 15If an application requires custom permissions, add the permissions under the **definePermissions** field in the [configuration file](https://gitee.com/openharmony/utils_system_resources/blob/master/systemres/main/config.json) of the system resource HAP. For details about the permission format, see [Defining Permissions](../../../application-dev/quick-start/module-structure.md#internal-structure-of-the-definepermissions-attribute). 16 17## cl.bundlemanager.2 Level-2 Module File Names Changed 18 19The level-2 module file names of the bundle manager module are changed to their respective API names in the file, as listed below. 20 21| Original File Name|New File Name| 22|----|----| 23| bundleManager/abilityInfo.d.ts | bundleManager/AbilityInfo.d.ts | 24| bundleManager/applicationInfo.d.ts | bundleManager/ApplicationInfo.d.ts | 25| bundleManager/bundleInfo.d.ts | bundleManager/BundleInfo.d.ts | 26| bundleManager/dispatchInfo.d.ts | bundleManager/DispatchInfo.d.ts | 27| bundleManager/elementName.d.ts | bundleManager/ElementName.d.ts | 28| bundleManager/extensionAbilityInfo.d.ts | bundleManager/ExtensionAbilityInfo.d.ts | 29| bundleManager/hapModuleInfo.d.ts | bundleManager/HapModuleInfo.d.ts | 30| bundleManager/launcherAbilityInfo.d.ts | bundleManager/LauncherAbilityInfo.d.ts | 31| bundleManager/metadata.d.ts | bundleManager/Metadata.d.ts | 32| bundleManager/packInfo.d.ts | bundleManager/BundlePackInfo.d.ts | 33| bundleManager/permissionDef.d.ts | bundleManager/PermissionDef.d.ts | 34| bundleManager/remoteAbilityInfo.d.ts | bundleManager/RemoteAbilityInfo.d.ts | 35| bundleManager/shortcutInfo.d.ts | bundleManager/ShortcutInfo.d.ts | 36 37To sum up, except **packInfo**, which is changed to **BundlePackInfo**, the other file names are changed to start with uppercase letters. 38 39**Change Impact**<br> 40The change of the level-2 module file names does not affect the use of the level-1 module. If a level-2 module interface under **bundleManager** is directly imported to the .ts file and an error is reported during compilation on DevEco Studio, you must change the name of the imported file. 41 42**Key API/Component Changes**<br> 43The .d.ts file names in the **bundleManager** folder are changed to their respective API names in the file. 44 45**Adaptation Guide**<br> 46Generally, no adaptation is required. If a file in the **bundleManager** folder is directly imported to the application, you must change the imported file name as follows: 47 48**Before change:** 49```ts 50import {AbilityInfo} from 'bundleManger/abilityInfo'; 51import {ExtensionAbilityInfo} from 'bundleManger/extensionAbilityInfo'; 52import {BundlePackInfo} from 'bundleManger/packInfo'; 53``` 54**After change:** 55```ts 56import {AbilityInfo} from 'bundleManger/AbilityInfo'; 57import {ExtensionAbilityInfo} from 'bundleManger/ExtensionAbilityInfo'; 58import {BundlePackInfo} from 'bundleManger/BundlePackInfo'; 59``` 60 61## cl.bundlemanager.3 LaunchType Enum Type Name Changed from STANDARD to MULTITON 62 63The enum type name of [LaunchType](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.bundleManager.d.ts) is changed from **STANDARD** to **MULTITON**. The enum value remains unchanged, indicating the multi-instance type. 64 65**Change Impact**<br> 66The **LaunchType.STANDARD** type does not take effect. 67 68**Key API/Component Changes**<br> 69The enum type name of **LaunchType** is changed from **STANDARD** to **MULTITON**. 70 71**Adaptation Guide**<br> 72Change **LaunchType.STANDARD** to **LaunchType.MULTITON** for your application. 73 74## cl.bundlemanager.4 Changed the isVisible Field in the AbilityInfo Struct to exported 75 76The **isVisible** field in the [AbilityInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/AbilityInfo.d.ts) struct is changed to **exported**. The type remains unchanged, indicating whether the ability can be exported and used by other abilities. 77 78**Change Impact**<br> 79The **isVisible** field does not take effect. 80 81**Key API/Component Changes**<br> 82The **isVisible** field in the [AbilityInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/AbilityInfo.d.ts) struct is changed to **exported**, and the type remains unchanged. 83 84**Adaptation Guide**<br> 85Change **isVisible** to **exported** for your application. 86 87## cl.bundlemanager.5 Changed the isVisible Field in the ExtensionAbilityInfo Struct to exported 88 89The **isVisible** field in the [ExtensionAbilityInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/ExtensionAbilityInfo.d.ts) struct is changed to **exported**. The type remains unchanged, indicating whether the ability can be exported and used by other abilities. 90 91**Change Impact**<br> 92The **isVisible** field does not take effect. 93 94**Key API/Component Changes**<br> 95The **isVisible** field in the [ExtensionAbilityInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/ExtensionAbilityInfo.d.ts) struct is changed to **exported**, and the type remains unchanged. 96 97**Adaptation Guide**<br> 98Change **isVisible** to **exported** for your application. 99 100## cl.bundlemanager.6 Changed the visible Field in the ModuleAbilityInfo Struct to exported 101 102The **visible** field in the [ModuleAbilityInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/BundlePackInfo.d.ts) struct is changed to **exported**. The type remains unchanged, indicating whether the ability can be exported and used by other abilities. 103 104**Change Impact**<br> 105The **visible** field does not take effect. 106 107**Key API/Component Changes**<br> 108The **visible** field in the [ModuleAbilityInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/BundlePackInfo.d.ts) struct is changed to **exported**, and the type remains unchanged. 109 110**Adaptation Guide**<br> 111Change **visible** to **exported** for your application. 112