# @ohos.bundle.launcherBundleManager (launcherBundleManager) The **bundle.launcherBundleManager** module providers APIs for the **Home Screen** application to obtain the [launcher ability information](js-apis-bundleManager-launcherAbilityInfo.md) and [shortcut information](js-apis-bundleManager-shortcutInfo.md). > **NOTE** > > 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. ## Modules to Import ```ts import launcherBundleManager from '@ohos.bundle.launcherBundleManager'; ``` ## launcherBundleManager.getLauncherAbilityInfo9+ getLauncherAbilityInfo(bundleName: string, userId: number, callback: AsyncCallback>) : void Obtains the launcher ability information based on the given bundle name and user ID. This API uses an asynchronous callback to return the result. **Required permissions**: ohos.permission.GET_BUNDLE_INFO_PRIVILEGED **System API**: This is a system API. **System capability**: SystemCapability.BundleManager.BundleFramework.Launcher **Parameters** | Name | Type | Mandatory| Description | | ---------- | ------ | ---- | -------------- | | bundleName | string | Yes | Bundle name.| | userId | number | Yes | User ID.| | callback | AsyncCallback\> | Yes| Callback used to return the **LauncherAbilityInfo** object obtained.| **Error codes** For details about the error codes, see [Bundle Error Codes](../errorcodes/errorcode-bundle.md). | ID| Error Message | | -------- | ---------------------------------------- | | 17700001 | The specified bundle name is not found. | | 17700004 | The specified user ID is not found. | **Example** ```ts import launcherBundleManager from '@ohos.bundle.launcherBundleManager'; import { BusinessError } from '@ohos.base'; try { launcherBundleManager.getLauncherAbilityInfo('com.example.demo', 100, (errData: BusinessError, data: launcherBundleManager.LauncherAbilityInfo[]) => { if (errData !== null) { console.error(`errData is errCode:${errData.code} message:${errData.message}`); } else { console.log("data is " + JSON.stringify(data)); } }) } catch (errData) { let code = (errData as BusinessError).code; let message = (errData as BusinessError).message; console.error(`errData is errCode:${code} message:${message}`); } ``` ## launcherBundleManager.getLauncherAbilityInfo9+ getLauncherAbilityInfo(bundleName: string, userId: number) : Promise> Obtains the launcher ability information based on the given bundle name and user ID. This API uses a promise to return the result. **Required permissions**: ohos.permission.GET_BUNDLE_INFO_PRIVILEGED **System API**: This is a system API. **System capability**: SystemCapability.BundleManager.BundleFramework.Launcher **Parameters** | Name | Type | Mandatory| Description | | ---------- | ------ | ---- | -------------- | | bundleName | string | Yes | Bundle name.| | userId | number | Yes | User ID.| **Return value** | Type | Description | | ----------------------------- | -------------------------------------------------- | | Promise\> | Promise used to return the **LauncherAbilityInfo** object obtained.| **Error codes** For details about the error codes, see [Bundle Error Codes](../errorcodes/errorcode-bundle.md). | ID| Error Message | | -------- | ---------------------------------------- | | 17700001 | The specified bundle name is not found. | | 17700004 | The specified user ID is not found. | **Example** ```ts import launcherBundleManager from '@ohos.bundle.launcherBundleManager'; import { BusinessError } from '@ohos.base'; try { launcherBundleManager.getLauncherAbilityInfo("com.example.demo", 100) .then((data: launcherBundleManager.LauncherAbilityInfo[]) => { console.log("data is " + JSON.stringify(data)); }).catch ((errData: BusinessError) => { console.error(`errData is errCode:${errData.code} message:${errData.message}`); }) } catch (errData) { let code = (errData as BusinessError).code; let message = (errData as BusinessError).message; console.error(`errData is errCode:${code} message:${message}`); } ``` ## launcherBundleManager.getLauncherAbilityInfoSync10+ getLauncherAbilityInfoSync(bundleName: string, userId: number) : Array\<[LauncherAbilityInfo](js-apis-bundleManager-launcherAbilityInfo.md)> Obtains the launcher ability information based on the given bundle name and user ID. This API returns the result synchronously. **Required permissions**: ohos.permission.GET_BUNDLE_INFO_PRIVILEGED **System API**: This is a system API. **System capability**: SystemCapability.BundleManager.BundleFramework.Launcher **Parameters** | Name | Type | Mandatory| Description | | ---------- | ------ | ---- | -------------- | | bundleName | string | Yes | Bundle name.| | userId | number | Yes | User ID.| **Return value** | Type | Description | | ----------------------------- | -------------------------------------------------- | | Array\<[LauncherAbilityInfo](js-apis-bundleManager-launcherAbilityInfo.md)> | Array of the **LauncherAbilityInfo** objects obtained.| **Error codes** For details about the error codes, see [Bundle Error Codes](../errorcodes/errorcode-bundle.md). | ID| Error Message | | -------- | ---------------------------------------- | | 17700001 | The specified bundle name is not found. | | 17700004 | The specified user ID is not found. | **Example** ```ts import launcherBundleManager from '@ohos.bundle.launcherBundleManager'; import { BusinessError } from '@ohos.base'; try { let data = launcherBundleManager.getLauncherAbilityInfoSync("com.example.demo", 100); console.log("data is " + JSON.stringify(data)); } catch (errData) { let code = (errData as BusinessError).code; let message = (errData as BusinessError).message; console.error(`errData is errCode:${code} message:${message}`); } ``` ## launcherBundleManager.getAllLauncherAbilityInfo9+ getAllLauncherAbilityInfo(userId: number, callback: AsyncCallback>) : void Obtains the launcher ability information of all applications based on the given user ID. This API uses an asynchronous callback to return the result. **Required permissions**: ohos.permission.GET_BUNDLE_INFO_PRIVILEGED **System API**: This is a system API. **System capability**: SystemCapability.BundleManager.BundleFramework.Launcher **Parameters** | Name| Type | Mandatory| Description | | ------ | ------ | ---- | -------------- | | userId | number | Yes | User ID.| | callback | AsyncCallback\> | Yes| Callback used to return the array of **LauncherAbilityInfo** objects obtained.| **Error codes** For details about the error codes, see [Bundle Error Codes](../errorcodes/errorcode-bundle.md). | ID| Error Message | | -------- | ---------------------------------------- | | 17700004 | The specified user ID is not found. | Example ```ts import launcherBundleManager from '@ohos.bundle.launcherBundleManager'; import { BusinessError } from '@ohos.base'; try { launcherBundleManager.getAllLauncherAbilityInfo(100, (errData: BusinessError, data: launcherBundleManager.LauncherAbilityInfo[]) => { if (errData !== null) { console.error(`errData is errCode:${errData.code} message:${errData.message}`); } else { console.log("data is " + JSON.stringify(data)); } }); } catch (errData) { let code = (errData as BusinessError).code; let message = (errData as BusinessError).message; console.error(`errData is errCode:${code} message:${message}`); } ``` ## launcherBundleManager.getAllLauncherAbilityInfo9+ getAllLauncherAbilityInfo(userId: number) : Promise> Obtains the launcher ability information of all applications based on the given user ID. This API uses a promise to return the result. **Required permissions**: ohos.permission.GET_BUNDLE_INFO_PRIVILEGED **System API**: This is a system API. **System capability**: SystemCapability.BundleManager.BundleFramework.Launcher **Parameters** | Name| Type | Mandatory| Description | | ------ | ------ | ---- | -------------- | | userId | number | Yes | User ID.| **Return value** | Type | Description | | ----------------------------- | ------------------------------------------------------ | | Promise\> | Promise used to return the array of **LauncherAbilityInfo** objects obtained.| **Error codes** For details about the error codes, see [Bundle Error Codes](../errorcodes/errorcode-bundle.md). | ID| Error Message | | -------- | ---------------------------------------- | | 17700004 | The specified user ID is not found. | **Example** ```ts import launcherBundleManager from '@ohos.bundle.launcherBundleManager'; import { BusinessError } from '@ohos.base'; try { launcherBundleManager.getAllLauncherAbilityInfo(100) .then((data: launcherBundleManager.LauncherAbilityInfo[]) => { console.log("data is " + JSON.stringify(data)); }).catch ((errData: BusinessError) => { console.error(`errData is errCode:${errData.code} message:${errData.message}`); }); } catch (errData) { let code = (errData as BusinessError).code; let message = (errData as BusinessError).message; console.error(`errData is errCode:${code} message:${message}`); } ``` ## launcherBundleManager.getShortcutInfo9+ getShortcutInfo(bundleName :string, callback: AsyncCallback>) : void Obtains the shortcut information of the current user based on the given bundle name. This API uses an asynchronous callback to return the result. **Required permissions**: ohos.permission.GET_BUNDLE_INFO_PRIVILEGED **System API**: This is a system API. **System capability**: SystemCapability.BundleManager.BundleFramework.Launcher **Parameters** | Name | Type | Mandatory| Description | | ---------- | ------ | ---- | -------------- | | bundleName | string | Yes | Bundle name.| | callback | AsyncCallback\> | Yes| Callback used to return the **ShortcutInfo** object obtained.| **Error codes** For details about the error codes, see [Bundle Error Codes](../errorcodes/errorcode-bundle.md). | ID| Error Message | | -------- | ---------------------------------------- | | 17700001 | The specified bundle name is not found. | **Example** ```ts import launcherBundleManager from '@ohos.bundle.launcherBundleManager'; import { BusinessError } from '@ohos.base'; try { launcherBundleManager.getShortcutInfo("com.example.demo", (errData: BusinessError, data: launcherBundleManager.ShortcutInfo[]) => { if (errData !== null) { console.error(`errData is errCode:${errData.code} message:${errData.message}`); } else { console.log("data is " + JSON.stringify(data)); } }); } catch (errData) { let code = (errData as BusinessError).code; let message = (errData as BusinessError).message; console.error(`errData is errCode:${code} message:${message}`); } ``` ## launcherBundleManager.getShortcutInfo9+ getShortcutInfo(bundleName : string) : Promise> Obtains the shortcut information of the current user based on the given bundle name. This API uses a promise to return the result. **Required permissions**: ohos.permission.GET_BUNDLE_INFO_PRIVILEGED **System API**: This is a system API. **System capability**: SystemCapability.BundleManager.BundleFramework.Launcher **Parameters** | Name | Type | Mandatory| Description | | ---------- | ------ | ---- | -------------- | | bundleName | string | Yes | Bundle name.| **Return value** | Type | Description | | ---------------------- | ----------------------------------------------- | | Promise\> | Promise used to return the **ShortcutInfo** object obtained.| **Error codes** For details about the error codes, see [Bundle Error Codes](../errorcodes/errorcode-bundle.md). | ID| Error Message | | -------- | ---------------------------------------- | | 17700001 | The specified bundle name is not found. | **Example** ```ts import launcherBundleManager from '@ohos.bundle.launcherBundleManager'; import { BusinessError } from '@ohos.base'; try { launcherBundleManager.getShortcutInfo("com.example.demo") .then((data: launcherBundleManager.ShortcutInfo[]) => { console.log("data is " + JSON.stringify(data)); }).catch ((errData: BusinessError) => { console.error(`errData is errCode:${errData.code} message:${errData.message}`); }); } catch (errData) { let code = (errData as BusinessError).code; let message = (errData as BusinessError).message; console.error(`errData is errCode:${code} message:${message}`); } ``` ## launcherBundleManager.getShortcutInfoSync10+ getShortcutInfoSync(bundleName : string) : Array\<[ShortcutInfo](js-apis-bundleManager-shortcutInfo.md)> Obtains the shortcut information of the current user based on the given bundle name. This API returns the result synchronously. **Required permissions**: ohos.permission.GET_BUNDLE_INFO_PRIVILEGED **System API**: This is a system API. **System capability**: SystemCapability.BundleManager.BundleFramework.Launcher **Parameters** | Name | Type | Mandatory| Description | | ---------- | ------ | ---- | -------------- | | bundleName | string | Yes | Bundle name.| **Return value** | Type | Description | | ---------------------- | ----------------------------------------------- | | Array\<[ShortcutInfo](js-apis-bundleManager-shortcutInfo.md)> | Array of the **ShortcutInfo** objects obtained.| **Error codes** For details about the error codes, see [Bundle Error Codes](../errorcodes/errorcode-bundle.md). | ID| Error Message | | -------- | ---------------------------------------- | | 17700001 | The specified bundle name is not found. | **Example** ```ts import launcherBundleManager from '@ohos.bundle.launcherBundleManager'; import { BusinessError } from '@ohos.base'; try { let data = launcherBundleManager.getShortcutInfoSync("com.example.demo"); console.log("data is " + JSON.stringify(data)); } catch (errData) { let code = (errData as BusinessError).code; let message = (errData as BusinessError).message; console.error(`errData is errCode:${code} message:${message}`); } ```