Bundle Manager Subsystem Changelog
cl.bundlemanager.1 Deleted getAbilityIcon
The getAbilityIcon API in @ohos.bundle.bundleManager.d.ts is deleted. The getMediaContent API in @ohos.resourceManager.d.ts can be used instead.
Change Impact
The getAbilityIcon API does not take effect.
Key API/Component Changes
The getAbilityIcon API is deleted from @ohos.bundle.bundleManager.d.ts.
Adaptation Guide
If your application uses getAbilityIcon in @ohos.bundle.bundleManager.d.ts, replace it with getMediaContent in @ohos.resourceManager.d.ts. You need to obtain the icon ID in advance. For details, see Usage Guide.
cl.bundlemanager.2 Bottom-Layer Capability Changed So That Only the System Resource HAP Supports Custom Permissions
Only 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. If an application requires custom permissions, add the permissions under the definePermissions field in the configuration file of the system resource HAP. For details about the permission format, see Defining Permissions.
Change Impact
After an upgrade to the new version image, the custom permission of the application does not take effect, and the authorization fails.
Key API/Component Changes
The bottom-layer capability of the bundle manager module is changed. Only the system resource HAP supports custom permissions.
Adaptation Guide
If an application requires custom permissions, add the permissions under the definePermissions field in the configuration file of the system resource HAP. For details about the permission format, see Defining Permissions.
cl.bundlemanager.3 Level-2 Module File Names Changed
The level-2 module file names of the bundle manager module are changed to their respective API names in the file, as listed below.
Original File Name | New File Name |
---|---|
bundleManager/abilityInfo.d.ts | bundleManager/AbilityInfo.d.ts |
bundleManager/applicationInfo.d.ts | bundleManager/ApplicationInfo.d.ts |
bundleManager/bundleInfo.d.ts | bundleManager/BundleInfo.d.ts |
bundleManager/dispatchInfo.d.ts | bundleManager/DispatchInfo.d.ts |
bundleManager/elementName.d.ts | bundleManager/ElementName.d.ts |
bundleManager/extensionAbilityInfo.d.ts | bundleManager/ExtensionAbilityInfo.d.ts |
bundleManager/hapModuleInfo.d.ts | bundleManager/HapModuleInfo.d.ts |
bundleManager/launcherAbilityInfo.d.ts | bundleManager/LauncherAbilityInfo.d.ts |
bundleManager/metadata.d.ts | bundleManager/Metadata.d.ts |
bundleManager/packInfo.d.ts | bundleManager/BundlePackInfo.d.ts |
bundleManager/permissionDef.d.ts | bundleManager/PermissionDef.d.ts |
bundleManager/remoteAbilityInfo.d.ts | bundleManager/RemoteAbilityInfo.d.ts |
bundleManager/shortcutInfo.d.ts | bundleManager/ShortcutInfo.d.ts |
To sum up, except packInfo, which is changed to BundlePackInfo, the other file names are changed to start with uppercase letters.
Change Impact
The 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.
Key API/Component Changes
The .d.ts file names in the bundleManager folder are changed to their respective API names in the file.
Adaptation Guide
Generally, 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:
Before change:
import {AbilityInfo} from 'bundleManger/abilityInfo';
import {ExtensionAbilityInfo} from 'bundleManger/extensionAbilityInfo';
import {BundlePackInfo} from 'bundleManger/packInfo';
After change:
import {AbilityInfo} from 'bundleManger/AbilityInfo';
import {ExtensionAbilityInfo} from 'bundleManger/ExtensionAbilityInfo';
import {BundlePackInfo} from 'bundleManger/BundlePackInfo';
cl.bundlemanager.4 LaunchType Enum Type Name Changed from STANDARD to MULTITON
The enum type name of LaunchType is changed from STANDARD to MULTITON. The enum value remains unchanged, indicating the multi-instance type.
Change Impact
The LaunchType.STANDARD type does not take effect.
Key API/Component Changes
The enum type name of LaunchType is changed from STANDARD to MULTITON.
Adaptation Guide
Change LaunchType.STANDARD to LaunchType.MULTITON for your application.
cl.bundlemanager.5 Changed the isVisible Field in the AbilityInfo Struct to exported
The isVisible field in the AbilityInfo struct is changed to exported. The type remains unchanged, indicating whether the ability can be exported and used by other abilities.
Change Impact
The isVisible field does not take effect.
Key API/Component Changes
The isVisible field in the AbilityInfo struct is changed to exported, and the type remains unchanged.
Adaptation Guide
Change isVisible to exported for your application.
cl.bundlemanager.6 Changed the isVisible Field in the ExtensionAbilityInfo Struct to exported
The isVisible field in the ExtensionAbilityInfo struct is changed to exported. The type remains unchanged, indicating whether the ability can be exported and used by other abilities.
Change Impact
The isVisible field does not take effect.
Key API/Component Changes
The isVisible field in the ExtensionAbilityInfo struct is changed to exported, and the type remains unchanged.
Adaptation Guide
Change isVisible to exported for your application.
cl.bundlemanager.7 Changed the visible Field in the ModuleAbilityInfo Struct to exported
The visible field in the ModuleAbilityInfo struct is changed to exported. The type remains unchanged, indicating whether the ability can be exported and used by other abilities.
Change Impact
The visible field does not take effect.
Key API/Component Changes
The visible field in the ModuleAbilityInfo struct is changed to exported, and the type remains unchanged.
Adaptation Guide
Change visible to exported for your application.
cl.bundlemanager.8 Deleted the distributedNotificationEnabled Tag from the app.json Configuration File
The distributedNotificationEnabled tag is deleted from the app.json configuration file.
Change Impact
If this tag is used, an error is reported during compilation on DevEco Studio.
Adaptation Guide
Delete this tag from the configuration file.
cl.bundlemanager.9 Deleted the entityType Tag from the app.json Configuration File
The entityType tag is deleted from the app.json configuration file.
Change Impact
If this tag is used, an error is reported during compilation on DevEco Studio.
Adaptation Guide
Delete this tag from the configuration file.
cl.bundlemanager.10 Deleted the keepAlive Tag from the app.json Configuration File
The keepAlive tag is deleted from the app.json configuration file.
Change Impact
If this tag is used, an error is reported during compilation on DevEco Studio.
Adaptation Guide
Delete this tag from the configuration file.
cl.bundlemanager.11 Deleted the removable Tag from the app.json Configuration File
The removable tag is deleted from the app.json configuration file.
Change Impact
If this tag is used, an error is reported during compilation on DevEco Studio.
Adaptation Guide
Delete this tag from the configuration file.
cl.bundlemanager.12 Deleted the singleton Tag from the app.json Configuration File
The singleton tag is deleted from the app.json configuration file.
Change Impact
If this tag is used, an error is reported during compilation on DevEco Studio.
Adaptation Guide
Delete this tag from the configuration file.
cl.bundlemanager.13 Deleted the userDataClearable Tag from the app.json Configuration File
The userDataClearable tag is deleted from the app.json configuration file.
Change Impact
If this tag is used, an error is reported during compilation on DevEco Studio.
Adaptation Guide
Delete this tag from the configuration file.
cl.bundlemanager.14 No Longer Chinese Characters for the name Tag under module in the module.json Configuration File
The value of name under module in the module.json configuration file does not support Chinese characters.
Change Impact
If the tag is set to Chinese, an error is reported during compilation on DevEco Studio.
Adaptation Guide
Set this tag to English.
cl.bundlemanager.15 No Longer Chinese Characters for the name Tag under ability in the module.json Configuration File
The value of name under ability in the module.json configuration file does not support Chinese characters.
Change Impact
If the tag is set to Chinese, an error is reported during compilation on DevEco Studio.
Adaptation Guide
Set this tag to English.
cl.bundlemanager.16 Deleted the uiSyntax Tag from the module.json Configuration File
The uiSyntax tag is deleted from the module.json configuration file.
Change Impact
If this tag is used, an error is reported during compilation on DevEco Studio.
Adaptation Guide
Delete this tag from the configuration file.
cl.bundlemanager.17 Changed srcEntrance to srcEntry in the module.json Configuration File
The srcEntrance tag under module and ability in the module.json configuration file is changed to srcEntry.
Change Impact
If the srcEntrance tag is used, an error is reported during compilation on DevEco Studio.
Adaptation Guide
Replace the srcEntrance tag with srcEntry in the configuration file.
cl.bundlemanager.18 Deleted the apiVersion Tag Under distroFilter from the module.json Configuration File
The apiVersion tag under distroFilter is deleted from the module.json configuration file.
Change Impact
If this tag is used, an error is reported during compilation on DevEco Studio.
Adaptation Guide
Delete this tag from the configuration file.
cl.bundlemanager.19 Changed distroFilter to distributionFilter in the module.json Configuration File
The distroFilter tag in the module.json configuration file is changed to distributionFilter.
Change Impact
If the distroFilter tag is used, an error is reported during compilation on DevEco Studio.
Adaptation Guide
Replace distroFilter with distributionFilter in the configuration file.
cl.bundlemanager.20 Changed standard of launchType to multiton in the module.json Configuration File
The standard mode of the launchType tag in the module.json file is changed to multiton.
Adaptation Guide
Replace standard of launchType to multiton in the configuration file.
cl.bundlemanager.21 Deleted the atomicService Tag from the app.json File
The atomicService tag is deleted from the app.json file.
Change Impact
If this tag is used, an error is reported during compilation on DevEco Studio.
Adaptation Guide
Delete the atomicService tag from your code.
cl.bundlemanager.22 Added the bundleType Tag to the app.json File
The bundleType tag is added to the app.json file.
Change Impact
For an existing ability with installationFree set to true, bundleType must be set to atomicService in the app.json file. Otherwise, the packaging fails.
Adaptation Guide
Add the bundleType tag. This tag can be left blank. The default value is app. The setting of this tag and the installationFree field in the module.json file must meet the following rules:
- If bundleType is app, installationFree must be set to false.
- If bundleType is atomicService, installationFree must be set to true.
cl.bundlemanager.23 Deleted the split Field from the ApplicationInfo Struct
The split field is deleted from the ApplicationInfo struct.
Change Impact
If the split field is used in your code, the compilation fails.
Key API/Component Changes
The split field is deleted from the ApplicationInfo struct.
Adaptation Guide
Delete the split field from the ApplicationInfo struct of your code. The stage model always forcibly splits bundles.
cl.bundlemanager.24 Deleted the atomicServiceModuleType Field from the HapModuleInfo Struct
The atomicServiceModuleType field is deleted from the HapModuleInfo struct.
Change Impact
If the atomicServiceModuleType field is used in your code, the compilation fails.
Key API/Component Changes
The atomicServiceModuleType field is deleted from the HapModuleInfo struct.
Adaptation Guide
Record the setting of the atomicServiceModuleType field, delete it from the HapModuleInfo struct, and set the moduleType field in the HapModuleInfo struct to the recorded value.
cl.bundlemanager.25 Deleted the AtomicServiceModuleType Enumerated Value
The atomicServiceModuleType field is deleted from the HapModuleInfo struct.
Change Impact
If the atomicServiceModuleType field is used in your code, the compilation fails.
Key API/Component Changes
The atomicServiceModuleType field is deleted from the HapModuleInfo struct.
Adaptation Guide
Record the setting of the atomicServiceModuleType field, delete it from the HapModuleInfo struct, and set the moduleType field in the HapModuleInfo struct to the recorded value.