openharmony 鸿蒙 js-apis-businessAbilityRouter-sys

2025-06-12 浏览 (2)

@ohos.app.businessAbilityRouter (Business Ability Router) (System API)

The businessAbilityRouter module provides APIs for you to query the business ability information of applications installed on the device. It provides a unified template for you to register standard services by type. Based on the information, a system application or third-party application can obtain services that meet certain criteria and select a proper service. The module also provides unified rules to manage redirection between applications and services. It prevents arbitrary switching between the foreground and background and avoids the distribution of third-party applications by means of redirection.

NOTE

The initial APIs of this module are supported since API version 10. Newly added APIs will be marked with a superscript to indicate their earliest API version.

The APIs provided by this module are system APIs.

Modules to Import

import businessAbilityRouter from '@ohos.app.businessAbilityRouter';

Required Permissions

PermissionAPLDescription
ohos.permission.GET_BUNDLE_INFO_PRIVILEGEDsystem_basicPermission to query information about all bundles.

For details about the APL, see Basic Concepts in the Permission Mechanism.

BusinessType

Enumerates the types of business abilities.

System capability: SystemCapability.Ability.AbilityRuntime.Core

System API: This is a system API.

NameValueDescription
SHARE0Business ability of the share type.
UNSPECIFIED255Business ability of an unspecified type.

BusinessAbilityFilter

Describes the criteria for filtering business abilities.

System capability: SystemCapability.Ability.AbilityRuntime.Core

System API: This is a system API.

NameTypeRead-onlyMandatoryDescription
businessTypeBusinessTypeNoYesType of the business ability.
mimeTypestringNoNoMIME type supported by the business ability.
uristringNoNoURI supported by the business ability.

businessAbilityRouter.queryBusinessAbilityInfo

queryBusinessAbilityInfo(filter: BusinessAbilityFilter, callback: AsyncCallback<Array<BusinessAbilityInfo>>): void;

Obtains the business ability information based on the specified filter criteria. This API uses an asynchronous callback to return the result. If the operation is successful, the business ability information is returned; otherwise, an error object is returned.

Required permissions: ohos.permission.GET_BUNDLE_INFO_PRIVILEGED

System capability: SystemCapability.Ability.AbilityRuntime.Core

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
filterBusinessAbilityFilterYesObject used to filter the business abilities.
callbackAsyncCallback<Array<BusinessAbilityInfo>>YesCallback used to return the result. If the operation is successful, the business ability information that meets the filter criteria is returned; otherwise, an error object is returned.

Error codes

For details about the error codes, see Universal Error Codes.

IDError Message
201Permission denied.
202Not System App. Interface caller is not a system app.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. 3. Parameter verification failed.

Example

import businessAbilityRouter from '@ohos.app.businessAbilityRouter';
import { BusinessError } from '@ohos.base';

let filter: businessAbilityRouter.BusinessAbilityFilter = {businessType: businessAbilityRouter.BusinessType.SHARE};

try {
    businessAbilityRouter.queryBusinessAbilityInfo(filter, (error, data) => {
        if (error) {
            console.error('queryBusinessAbilityInfo failed ' + error.message);
            return;
        }
        console.info('queryBusinessAbilityInfo success');
    });
} catch (error) {
    let message = (error as BusinessError).message;
    console.error('queryBusinessAbilityInfo failed ' + message);
}

businessAbilityRouter.queryBusinessAbilityInfo

queryBusinessAbilityInfo(filter: BusinessAbilityFilter): Promise<Array<BusinessAbilityInfo>>;

Obtains the business ability information based on the specified filter criteria. This API uses a promise to return the result. If the operation is successful, the business ability information is returned; otherwise, an error object is returned.

Required permissions: ohos.permission.GET_BUNDLE_INFO_PRIVILEGED

System capability: SystemCapability.Ability.AbilityRuntime.Core

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
filterBusinessAbilityFilterYesObject used to filter the business abilities.

Return value

TypeDescription
Promise<Array<BusinessAbilityInfo>>Promise used to return the business ability information that meets the filter criteria.

Error codes

For details about the error codes, see Universal Error Codes.

IDError Message
201Permission denied.
202Not System App. Interface caller is not a system app.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. 3. Parameter verification failed.

Example

import businessAbilityRouter from '@ohos.app.businessAbilityRouter';
import { BusinessError } from '@ohos.base';

let filter: businessAbilityRouter.BusinessAbilityFilter = {businessType: businessAbilityRouter.BusinessType.SHARE};

try {
    businessAbilityRouter.queryBusinessAbilityInfo(filter)
        .then(() => {
            console.info('queryBusinessAbilityInfo success');
        }).catch((error: BusinessError) => {
            console.error('queryBusinessAbilityInfo failed ' + error.message);
        });
} catch (error) {
    let message = (error as BusinessError).message;
    console.error('queryBusinessAbilityInfo failed ' + message);
}

你可能感兴趣的鸿蒙文章

harmony 鸿蒙Ability Kit

harmony 鸿蒙AbilityAccessControl

harmony 鸿蒙AbilityBase

harmony 鸿蒙AbilityBase_Element

harmony 鸿蒙AbilityRuntime

harmony 鸿蒙bundle

harmony 鸿蒙OH_NativeBundle_ApplicationInfo

harmony 鸿蒙OH_NativeBundle_ElementName

harmony 鸿蒙ability_access_control.h

harmony 鸿蒙ability_base_common.h

  • 所属分类: 后端技术
  • 本文标签: 鸿蒙 软件
  • 版权声明: 本文链接 https://seaxiang.com/blog/PiCumH