0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

鴻蒙開發(fā)接口應用程序包管理:【Bundle模塊(JS端SDK接口)】

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-05-22 15:20 ? 次閱讀

Bundle模塊(JS端SDK接口)

icon-note.gif說明: 本模塊首批接口從API version 7開始支持。后續(xù)版本的新增接口,采用上角標單獨標記接口的起始版本。 API9 當前為Canary版本,僅供試用,不保證接口可穩(wěn)定調用。

導入模塊

import bundle from '@ohos.bundle';

開發(fā)前請熟悉鴻蒙開發(fā)指導文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]

系統(tǒng)能力

SystemCapability.BundleManager.BundleFramework

權限列表

權限權限等級描述
ohos.permission.GET_BUNDLE_INFOnormal僅限查詢本應用信息
ohos.permission.GET_BUNDLE_INFO_PRIVILEGEDsystem_basic可查詢所有應用信息
ohos.permission.INSTALL_BUNDLEsystem_core可安裝、卸載應用

bundle.getApplicationInfo

getApplicationInfo(bundleName: string, bundleFlags: number, userId?: number): Promise

以異步方法根據(jù)給定的包名獲取ApplicationInfo,使用Promise形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù)

名稱類型必填描述
bundleNamestring要查詢的應用程序包名稱。
bundleFlagsnumber用于指定返回的應用信息對象中包含信息的標記。默認值:0,取值范圍:大于等于0。
userIdnumber用戶ID。默認值:調用方所在用戶,取值范圍:大于等于0。

返回值:

類型說明
Promise<[ApplicationInfo]>Promise形式返回應用程序信息。

示例:

let bundleName = "com.example.myapplication";
let bundleFlags = 0;
let userId = 100;
bundle.getApplicationInfo(bundleName, bundleFlags, userId)
.then((data) = > {
    console.info('Operation successful. Data: ' + JSON.stringify(data));
}).catch((error) = > {
    console.error('Operation failed. Cause: ' + JSON.stringify(error));
})

bundle.getApplicationInfo

getApplicationInfo(bundleName: string, bundleFlags: number, userId: number, callback: AsyncCallback): void

以異步方法根據(jù)給定的包名獲取ApplicationInfo,使用callback形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring要查詢的應用程序包名稱。
bundleFlagsnumber用于指定返回的應用信息對象中包含信息的標記。默認值:0,取值范圍:大于等于0。
userIdnumber用戶ID。默認值:調用方所在用戶,取值范圍:大于等于0。
callbackAsyncCallback<[ApplicationInfo]>程序啟動作為入?yún)⒌幕卣{函數(shù),返回應用程序信息。

示例:

let bundleName = "com.example.myapplication";
let bundleFlags = 0;
let userId = 100;
bundle.getApplicationInfo(bundleName, bundleFlags, userId, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
 })

bundle.getApplicationInfo

getApplicationInfo(bundleName: string, bundleFlags: number, callback: AsyncCallback): void

以異步方法根據(jù)給定的包名獲取ApplicationInfo,使用callback形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring要查詢的應用程序包名稱。
bundleFlagsnumber用于指定返回的應用信息對象中包含信息的標記。默認值:0,取值范圍:大于等于0。
callbackAsyncCallback<[ApplicationInfo]>程序啟動作為入?yún)⒌幕卣{函數(shù),返回應用程序信息。

示例:

let bundleName = "com.example.myapplication";
let bundleFlags = 0;
bundle.getApplicationInfo(bundleName, bundleFlags, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
 })

bundle.getAllBundleInfo

getAllBundleInfo(bundleFlag: BundleFlag, userId?: number): Promise>

以異步方法獲取系統(tǒng)中所有可用的BundleInfo,使用Promise形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleFlagBundleFlag用于指定返回的應用信息對象中包含信息的標記。默認值:0,取值范圍:大于等于0。
userIdnumber用戶ID。默認值:調用方所在用戶,取值范圍:大于等于0。

返回值:

類型說明
Promise>Promise形式返回所有可用的BundleInfo

示例:

let bundleFlag = 0;
let userId = 100;
bundle.getAllBundleInfo(bundleFlag, userId)
.then((data) = > {
    console.info('Operation successful. Data: ' + JSON.stringify(data));
}).catch((error) = > {
    console.error('Operation failed. Cause: ' + JSON.stringify(error));
})

bundle.getAllBundleInfo

getAllBundleInfo(bundleFlag: BundleFlag, callback: AsyncCallback>): void

以異步方法獲取系統(tǒng)中所有可用的BundleInfo,使用callback形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleFlagBundleFlag用于指定返回的應用信息對象中包含信息的標記。默認值:0,取值范圍:大于等于0。
callbackAsyncCallback>程序啟動作為入?yún)⒌幕卣{函數(shù),返回所有可用的BundleInfo。

示例:

let bundleFlag = 0;
bundle.getAllBundleInfo(bundleFlag, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
 })

bundle.getAllBundleInfo

getAllBundleInfo(bundleFlag: BundleFlag, userId: number, callback: AsyncCallback>): void

以異步方法獲取系統(tǒng)中所有可用的BundleInfo,使用callback形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleFlagBundleFlag用于指定返回的應用信息對象中包含信息的標記。默認值:0,取值范圍:大于等于0。
userIdnumber用戶ID。默認值:調用方所在用戶,取值范圍:大于等于0。
callbackAsyncCallback>程序啟動作為入?yún)⒌幕卣{函數(shù),返回所有可用的BundleInfo。

示例:

let bundleFlag = 0;
let userId = 100;
bundle.getAllBundleInfo(bundleFlag, userId, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
 })

bundle.getBundleInfo

getBundleInfo(bundleName: string, bundleFlags: number, options?: BundleOptions): Promise

以異步方法根據(jù)給定的包名獲取BundleInfo,使用Promise形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring包名
bundleFlagsnumber用于指定返回的應用信息對象中包含信息的標記。默認值:0,取值范圍:大于等于0。
options[BundleOptions]包含userid。

返回值:

類型說明
Promise<[BundleInfo]>返回值為Promise對象,Promise中包含包信息。

示例:

let bundleName = "com.example.myapplication";
let bundleFlags = 1;
let options = {
  "userId" : 100
};
bundle.getBundleInfo(bundleName, bundleFlags, options)
.then((data) = > {
    console.info('Operation successful. Data: ' + JSON.stringify(data));
}).catch((error) = > {
    console.error('Operation failed. Cause: ' + JSON.stringify(error));
})

bundle.getBundleInfo

getBundleInfo(bundleName: string, bundleFlags: number, callback: AsyncCallback): void

以異步方法根據(jù)給定的包名獲取BundleInfo,使用callback形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring包名
bundleFlagsnumber用于指定返回的應用信息對象中包含信息的標記。默認值:0,取值范圍:大于等于0。
callbackAsyncCallback<[BundleInfo]>程序啟動作為入?yún)⒌幕卣{函數(shù),返回包信息。

示例:

let bundleName = "com.example.myapplication";
let bundleFlags = 1;
bundle.getBundleInfo(bundleName, bundleFlags, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
})

bundle.getBundleInfo

getBundleInfo(bundleName: string, bundleFlags: number, options: BundleOptions, callback: AsyncCallback): void

以異步方法根據(jù)給定的包名獲取BundleInfo,使用callback形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring包名
bundleFlagsnumber用于指定返回的應用信息對象中包含信息的標記。默認值:0,取值范圍:大于等于0。
options[BundleOptions]包含userid。
callbackAsyncCallback<[BundleInfo]>程序啟動作為入?yún)⒌幕卣{函數(shù),返回包信息。

示例:

let bundleName = "com.example.myapplication";
let bundleFlags = 1;
let options = {
  "userId" : 100
};
bundle.getBundleInfo(bundleName, bundleFlags, options, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
})

bundle.getAllApplicationInfo

getAllApplicationInfo(bundleFlags: number, userId?: number): Promise>

獲取指定用戶下所有已安裝的應用信息,通過Promise獲取返回值。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleFlagsnumber用于指定返回的應用信息對象中包含信息的標記。默認值:0,取值范圍:大于等于0。
userIdnumber用戶ID。默認值:調用方所在用戶,取值范圍:大于等于0。

返回值:

類型說明
Promise>返回值為Promise對象,Promise中包含應用信息列表。

示例:

let bundleFlags = 8;
let userId = 100;
bundle.getAllApplicationInfo(bundleFlags, userId)
.then((data) = > {
    console.info('Operation successful. Data: ' + JSON.stringify(data));
}).catch((error) = > {
    console.error('Operation failed. Cause: ' + JSON.stringify(error));
})

bundle.getAllApplicationInfo

getAllApplicationInfo(bundleFlags: number, userId: number, callback: AsyncCallback>): void

獲取指定用戶下所有已安裝的應用信息,使用callback形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleFlagsnumber用于指定返回的應用信息對象中包含信息的標記。默認值:0,取值范圍:大于等于0。
userIdnumber用戶ID。默認值:調用方所在用戶,取值范圍:大于等于0。
callbackAsyncCallback>程序啟動作為入?yún)⒌幕卣{函數(shù),返回應用信息列表。

示例:

let bundleFlags = 8;
let userId = 100;
bundle.getAllApplicationInfo(bundleFlags, userId, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
})

bundle.getAllApplicationInfo

getAllApplicationInfo(bundleFlags: number, callback: AsyncCallback>) : void;

獲取指定用戶下所有已安裝的應用信息,使用callback形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleFlagsnumber用于指定返回的應用信息對象中包含信息的標記。默認值:0,取值范圍:大于等于0。
callbackAsyncCallback>程序啟動作為入?yún)⒌幕卣{函數(shù),返回應用信息列表。

示例:

let bundleFlags = 8;
bundle.getAllApplicationInfo(bundleFlags, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
})

bundle.getBundleInstaller

getBundleInstaller(): Promise;

獲取用于安裝包的接口

需要權限:

ohos.permission.INSTALL_BUNDLE

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

系統(tǒng)API:

此接口為系統(tǒng)接口,三方應用不支持調用

返回值:

類型說明
Promise<[BundleInstaller]>返回值為Promise對象,Promise中包含安裝信息。

bundle.getBundleInstaller

getBundleInstaller(callback: AsyncCallback): void;

獲取用于安裝包的接口

需要權限:

ohos.permission.INSTALL_BUNDLE

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

系統(tǒng)API:

此接口為系統(tǒng)接口,三方應用不支持調用

參數(shù):

名稱類型必填描述
callbackAsyncCallback<[BundleInstaller]>安裝應用程序包。

bundle.getBundleArchiveInfo

getBundleArchiveInfo(hapFilePath: string, bundleFlags: number, callback: AsyncCallback) : void

獲取有關ohos能力包(HAP)中包含的應用程序包的信息

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
hapFilePathstring指示存儲HAP的路徑,路徑應該是數(shù)據(jù)的相對路徑。
bundleFlagsnumber指示用于指定要刪除的BundleInfo對象中包含的信息的標志。
callbackAsyncCallback<[BundleInfo]>程序啟動作為入?yún)⒌幕卣{函數(shù),返回BundleInfo信息。

bundle.getBundleArchiveInfo

getBundleArchiveInfo(hapFilePath: string, bundleFlags: number) : Promise;

獲取有關ohos能力包(HAP)中包含的應用程序包的信息

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
hapFilePathstring指示存儲HAP的路徑,路徑應該是數(shù)據(jù)的相對路徑。
bundleFlagsnumber指示用于指定要刪除的BundleInfo對象中包含的信息的標志。

返回值:

類型說明
Promise<[BundleInfo]>返回值為Promise對象,Promise中包含應用包的信息。

bundle.cleanBundleCacheFiles8+

cleanBundleCacheFiles(bundleName: string, callback: AsyncCallback): void;

清除指定應用程序的緩存數(shù)據(jù)

需要權限:

ohos.permission.REMOVE_CACHE_FILES

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

系統(tǒng)API:

此接口為系統(tǒng)接口,三方應用不支持調用

參數(shù):

名稱類型必填描述
bundleNamestring指示要清除其緩存數(shù)據(jù)的應用程序包名稱.
callbackAsyncCallback為返回操作結果而調用的回調。

bundle.cleanBundleCacheFiles8+

cleanBundleCacheFiles(bundleName: string): Promise

清除指定應用程序的緩存數(shù)據(jù)

需要權限:

ohos.permission.REMOVE_CACHE_FILES

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

系統(tǒng)API:

此接口為系統(tǒng)接口,三方應用不支持調用

參數(shù):

名稱類型必填描述
bundleNamestring指示要清除其緩存數(shù)據(jù)的應用程序包名稱.

返回值:

類型說明
Promise返回值為Promise對象,Promise中為空。

bundle.setApplicationEnabled8+

setApplicationEnabled(bundleName: string, isEnable: boolean, callback: AsyncCallback): void;

設置是否啟用指定的應用程序

需要權限:

ohos.permission.CHANGE_ABILITY_ENABLED_STATE

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

系統(tǒng)API:

此接口為系統(tǒng)接口,三方應用不支持調用

參數(shù):

名稱類型必填描述
bundleNamestring應用程序包名稱。
isEnableboolean指定是否啟用應用程序。true表示啟用,false禁用。
callbackAsyncCallback為返回操作結果而調用的回調。

bundle.setApplicationEnabled8+

setApplicationEnabled(bundleName: string, isEnable: boolean): Promise

設置是否啟用指定的應用程序

需要權限:

ohos.permission.CHANGE_ABILITY_ENABLED_STATE

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

系統(tǒng)API:

此接口為系統(tǒng)接口,三方應用不支持調用

參數(shù):

名稱類型必填描述
bundleNamestring應用程序包名稱。
isEnableboolean指定是否啟用應用程序。true表示啟用,false禁用。

返回值:

類型說明
Promise返回值為Promise對象,Promise中為空。

bundle.setAbilityEnabled8+

setApplicationEnabled(bundleName: string, isEnable: boolean, callback: AsyncCallback): void;

設置是否啟用指定的功能

需要權限:

ohos.permission.CHANGE_ABILITY_ENABLED_STATE

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

系統(tǒng)API:

此接口為系統(tǒng)接口,三方應用不支持調用

參數(shù):

名稱類型必填描述
info[AbilityInfo]Ability信息。
isEnableboolean指定是否啟用應用程序。true表示啟用,false禁用。
callbackAsyncCallback為返回操作結果而調用的回調。

bundle.setAbilityEnabled8+

setAbilityEnabled(info: AbilityInfo, isEnable: boolean): Promise

設置是否啟用指定的功能

需要權限:

ohos.permission.CHANGE_ABILITY_ENABLED_STATE

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

系統(tǒng)API:

此接口為系統(tǒng)接口,三方應用不支持調用

參數(shù):

名稱類型必填描述
info[AbilityInfo]Ability信息。
isEnableboolean指定是否啟用應用程序。true表示啟用,false禁用。

返回值:

類型說明
Promise返回值為Promise對象,Promise中為空。

bundle.getPermissionDef8+

getPermissionDef(permissionName: string, callback: AsyncCallback): void;

按權限名稱獲取權限的詳細信息

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

系統(tǒng)API:

此接口為系統(tǒng)接口,三方應用不支持調用

參數(shù):

名稱類型必填描述
permissionNamestring指定權限的名稱。
callbackAsyncCallback<[PermissionDef]>程序啟動作為入?yún)⒌幕卣{函數(shù),返回定義的權限信息。

bundle.getPermissionDef8+

getPermissionDef(permissionName: string): Promise

按權限名稱獲取權限的詳細信息

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

系統(tǒng)API:

此接口為系統(tǒng)接口,三方應用不支持調用

參數(shù):

名稱類型必填描述
permissionNamestring指定權限的名稱。

返回值:

類型說明
Promise<[PermissionDef]>返回值為Promise對象,Promise中包含定義的權限信息對象。

bundle.setModuleUpgradeFlag9+

setModuleUpgradeFlag(bundleName: string, moduleName: string, upgradeFlag: UpgradeFlag, callback: AsyncCallback):void;

設置模塊是否需要升級

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

系統(tǒng)API:

此接口為系統(tǒng)接口,三方應用不支持調用

參數(shù):

名稱類型必填描述
bundleNamestring應用程序包名稱。
moduleNamestring應用程序模塊名稱。
upgradeFlag[UpgradeFlag]僅供內部系統(tǒng)使用標志位
callbackAsyncCallback為返回操作結果而調用的回調。

bundle.setModuleUpgradeFlag9+

setModuleUpgradeFlag(bundleName: string, moduleName: string, upgradeFlag: UpgradeFlag): Promise

設置模塊是否需要升級

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

系統(tǒng)API:

此接口為系統(tǒng)接口,三方應用不支持調用

參數(shù):

名稱類型必填描述
bundleNamestring應用程序包名稱。
moduleNamestring應用程序模塊名稱。
upgradeFlag[UpgradeFlag]僅供內部系統(tǒng)使用標志位

返回值:

類型說明
Promise返回值為Promise對象,Promise中為空。

bundle.isModuleRemovable9+

isModuleRemovable(bundleName: string, moduleName: string, callback: AsyncCallback): void;

檢查指定模塊是否被移除

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

系統(tǒng)API:

此接口為系統(tǒng)接口,三方應用不支持調用

參數(shù):

名稱類型必填描述
bundleNamestring應用程序包名稱。
moduleNamestring應用程序模塊名稱。
callbackAsyncCallback程序啟動作為入?yún)⒌幕卣{函數(shù),返回boolean信息。

bundle.isModuleRemovable9+

isModuleRemovable(bundleName: string, moduleName: string): Promise

檢查指定模塊是否被移除

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

系統(tǒng)API:

此接口為系統(tǒng)接口,三方應用不支持調用

參數(shù):

名稱類型必填描述
bundleNamestring應用程序包名稱。
moduleNamestring應用程序模塊名稱。

返回值:

類型說明
PromisePromise形式返回boolean信息。

bundle.getAbilityInfo

getAbilityInfo(bundleName: string, abilityName: string): Promise

通過包名稱和abilityName獲取Ability信息,使用Promise形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring應用程序包名。
abilityNamestringAbility名稱。

返回值:

類型說明
Promise<[AbilityInfo]>Promise形式返回Ability信息。

示例:

let bundleName = "com.example.myapplication";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityInfo(bundleName, abilityName)
.then((data) = > {
    console.info('Operation successful. Data: ' + JSON.stringify(data));
}).catch((error) = > {
    console.error('Operation failed. Cause: ' + JSON.stringify(error));
})

bundle.getAbilityInfo

getAbilityInfo(bundleName: string, abilityName: string, callback: AsyncCallback): void;

通過包名稱和abilityName獲取Ability信息,使用callback形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring應用程序包名。
abilityNamestringAbility名稱。
callbackAsyncCallback<[AbilityInfo]>程序啟動作為入?yún)⒌幕卣{函數(shù),返回Ability信息。

示例:

let bundleName = "com.example.myapplication";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityInfo(bundleName, abilityName, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
})

bundle.getAbilityInfo9+

getAbilityInfo(bundleName: string, moduleName: string, abilityName: string): Promise

通過包名稱、moduleName和abilityName獲取Ability信息,使用Promise形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring應用程序包名。
moduleNamestringModule名稱。
abilityNamestringAbility名稱。

返回值:

類型說明
Promise<[AbilityInfo]>Promise形式返回Ability信息。

示例:

let bundleName = "com.example.myapplication";
let moduleName = "entry";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityInfo(bundleName, moduleName, abilityName)
.then((data) = > {
    console.info('Operation successful. Data: ' + JSON.stringify(data));
}).catch((error) = > {
    console.error('Operation failed. Cause: ' + JSON.stringify(error));
})

bundle.getAbilityInfo9+

getAbilityInfo(bundleName: string, moduleName: string, abilityName: string, callback: AsyncCallback): void;

通過包名稱、moduleName和abilityName獲取Ability信息,使用callback形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring應用程序包名。
moduleNamestringModule名稱。
abilityNamestringAbility名稱。
callbackAsyncCallback<[AbilityInfo]>程序啟動作為入?yún)⒌幕卣{函數(shù),返回Ability信息。

示例:

let bundleName = "com.example.myapplication";
let moduleName = "entry";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityInfo(bundleName, moduleName, abilityName, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
})

bundle.getAbilityLabel8+

getAbilityLabel(bundleName: string, abilityName: string): Promise

通過包名稱和abilityName獲取應用名稱,使用Promise形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring應用程序包名。
abilityNamestringAbility名稱。

返回值:

類型說明
PromisePromise形式返回應用名稱信息。

示例:

let bundleName = "com.example.myapplication";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityLabel(bundleName, abilityName)
.then((data) = > {
    console.info('Operation successful. Data: ' + JSON.stringify(data));
}).catch((error) = > {
    console.error('Operation failed. Cause: ' + JSON.stringify(error));
})

bundle.getAbilityLabel8+

getAbilityLabel(bundleName: string, abilityName: string, callback : AsyncCallback): void

通過包名稱和abilityName獲取應用名稱,使用callback形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring應用程序包名。
abilityNamestringAbility名稱。
callbackAsyncCallback程序啟動作為入?yún)⒌幕卣{函數(shù),返回應用名稱信息。

示例:

let bundleName = "com.example.myapplication";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityLabel(bundleName, abilityName, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
})

bundle.getAbilityLabel9+

getAbilityLabel(bundleName: string, moduleName: string, abilityName: string): Promise

通過包名稱、moduleName和abilityName獲取應用名稱,使用Promise形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring應用程序包名。
moduleNamestringModule名稱。
abilityNamestringAbility名稱。

返回值:

類型說明
PromisePromise形式返回應用名稱信息。

示例:

let bundleName = "com.example.myapplication";
let moduleName = "entry";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityLabel(bundleName, moduleName, abilityName)
.then((data) = > {
    console.info('Operation successful. Data: ' + JSON.stringify(data));
}).catch((error) = > {
    console.error('Operation failed. Cause: ' + JSON.stringify(error));
})

bundle.getAbilityLabel9+

getAbilityLabel(bundleName: string, moduleName: string, abilityName: string, callback : AsyncCallback): void

通過包名稱、moduleName和abilityName獲取應用名稱,使用callback形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring應用程序包名。
moduleNamestringModule名稱。
abilityNamestringAbility名稱。
callbackAsyncCallback程序啟動作為入?yún)⒌幕卣{函數(shù),返回應用名稱信息。

示例:

let bundleName = "com.example.myapplication";
let moduleName = "entry";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityLabel(bundleName, moduleName, abilityName, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
})

bundle.isAbilityEnabled8+

isAbilityEnabled(info: AbilityInfo): Promise

以異步方法根據(jù)給定的AbilityInfo查詢ability是否已經啟用,使用Promise形式返回結果。

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
info[AbilityInfo]Ability的配置信息

返回值:

類型說明
PromisePromise形式返回boolean代表是否啟用。

示例:

let bundleName = "com.example.myapplication";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityInfo(bundleName, abilityName).then((abilityInfo)= >{
    bundle.isAbilityEnabled(abilityInfo).then((data) = > {
        console.info('Operation successful. Data: ' + JSON.stringify(data));
    }).catch((error) = > {
        console.error('Operation failed. Cause: ' + JSON.stringify(error));
    })
})

bundle.isAbilityEnabled8+

isAbilityEnabled(info : AbilityInfo, callback : AsyncCallback): void

以異步方法根據(jù)給定的AbilityInfo查詢ability是否已經啟用,使用callback形式返回結果。

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
info[AbilityInfo]Ability的配置信息
callbackAsyncCallback返回boolean代表是否啟用

示例:

let bundleName = "com.example.myapplication";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityInfo(bundleName, abilityName).then((abilityInfo)= >{
    bundle.isAbilityEnabled(abilityInfo, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
    })
})

bundle.isApplicationEnabled8+

isApplicationEnabled(bundleName: string): Promise

以異步方法根據(jù)給定的包名查詢指定應用程序是否已經啟用,使用Promise形式返回結果。

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring要查詢的應用程序包名稱。

返回值:

類型說明
PromisePromise形式返回boolean代表是否啟用。

示例:

let bundleName = "com.example.myapplication";
bundle.isApplicationEnabled(bundleName)
.then((data) = > {
    console.info('Operation successful. Data: ' + JSON.stringify(data));
}).catch((error) = > {
    console.error('Operation failed. Cause: ' + JSON.stringify(error));
})

bundle.isApplicationEnabled8+

isApplicationEnabled(bundleName: string, callback : AsyncCallback): void

以異步方法根據(jù)給定的包名查詢指定應用程序是否已經啟用,使用callback形式返回結果。

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring要查詢的應用程序包名稱。
callbackAsyncCallback返回boolean代表是否啟用

示例:

let bundleName = "com.example.myapplication";
bundle.isApplicationEnabled(bundleName, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
})

bundle.queryAbilityByWant

queryAbilityByWant(want: Want, bundleFlags: number, userId?: number): Promise>

以異步方法根據(jù)給定的意圖獲取Ability信息,使用Promise形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
want[Want]包含要查詢的應用程序包名稱的意圖。
bundleFlagsnumber用于指定返回abilityInfo信息。默認值:0,取值范圍:大于等于0。
userIdnumber用戶ID。默認值:調用方所在用戶,取值范圍:大于等于0

返回值:

類型說明
Promise>Promise形式返回Ability信息。

示例:

let bundleFlags = 0;
let userId = 100;
let want = {
    bundleName : "com.example.myapplication",
    abilityName : "com.example.myapplication.MainAbility"
};
bundle.queryAbilityByWant(want, bundleFlags, userId)
.then((data) = > {
    console.info('Operation successful. Data: ' + JSON.stringify(data));
}).catch((error) = > {
    console.error('Operation failed. Cause: ' + JSON.stringify(error));
})

bundle.queryAbilityByWant

queryAbilityByWant(want: Want, bundleFlags: number, userId: number, callback: AsyncCallback>): void

以異步方法根據(jù)給定的意圖獲取Ability信息,使用callback形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
want[Want]指示包含要查詢的應用程序包名稱的意圖。
bundleFlagsnumber用于指定返回abilityInfo信息。默認值:0,取值范圍:大于等于0。
userIdnumber用戶ID。默認值:調用方所在用戶,取值范圍:大于等于0
callbackAsyncCallback>程序啟動作為入?yún)⒌幕卣{函數(shù),返回Ability信息。

示例:

let bundleFlags = 0;
let userId = 100;
let want = {
    bundleName : "com.example.myapplication",
    abilityName : "com.example.myapplication.MainAbility"
};
bundle.queryAbilityByWant(want, bundleFlags, userId, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
})

bundle.queryAbilityByWant

queryAbilityByWant(want: Want, bundleFlags: number, callback: AsyncCallback>): void;

以異步方法根據(jù)給定的意圖獲取Ability信息,使用callback形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
want[Want]指示包含要查詢的應用程序包名稱的意圖。
bundleFlagsnumber用于指定返回abilityInfo信息。默認值:0,取值范圍:大于等于0。
callbackAsyncCallback>程序啟動作為入?yún)⒌幕卣{函數(shù),返回Ability信息。

示例:

let bundleFlags = 0;
let want = {
    bundleName : "com.example.myapplication",
    abilityName : "com.example.myapplication.MainAbility"
};
bundle.queryAbilityByWant(want, bundleFlags, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
})

bundle.getLaunchWantForBundle

getLaunchWantForBundle(bundleName: string): Promise

以異步方法查詢拉起指定應用的want對象,使用Promise形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring要查詢的應用程序包名稱。

返回值:

類型說明
Promise<[Want]>返回值為Promise對象,Promise中包含拉起指定應用的Want對象。

示例:

let bundleName = "com.example.myapplication";
bundle.getLaunchWantForBundle(bundleName)
.then((data) = > {
    console.info('Operation successful. Data: ' + JSON.stringify(data));
}).catch((error) = > {
    console.error('Operation failed. Cause: ' + JSON.stringify(error));
})

bundle.getLaunchWantForBundle

getLaunchWantForBundle(bundleName: string, callback: AsyncCallback): void;

以異步方法查詢拉起指定應用的want對象,使用callback形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring要查詢的應用程序包名稱。
callbackAsyncCallback<[Want]>程序啟動作為入?yún)⒌幕卣{函數(shù),返回拉起指定應用的want對象。

示例:

let bundleName = "com.example.myapplication";
bundle.getLaunchWantForBundle(bundleName, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
})

bundle.getNameForUid8+

getNameForUid(uid: number): Promise

以異步方法通過uid獲取對應的包名,使用Promise形式返回結果。

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
uidnumber要查詢的uid。

返回值:

類型說明
Promise返回值為Promise對象,Promise中包含指定uid的包名。

示例:

let uid = 20010005;
bundle.getNameForUid(uid)
.then((data) = > {
    console.info('Operation successful. Data: ' + JSON.stringify(data));
}).catch((error) = > {
    console.error('Operation failed. Cause: ' + JSON.stringify(error));
})

bundle.getNameForUid8+

getNameForUid(uid: number, callback: AsyncCallback) : void

以異步方法通過uid獲取對應的包名,使用callback形式返回結果。

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
uidnumber要查詢的uid。
callbackAsyncCallback程序啟動作為入?yún)⒌幕卣{函數(shù),返回指定uid的包名。

示例:

let uid = 20010005;
bundle.getNameForUid(uid, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
})

bundle.getAbilityIcon8+

getAbilityIcon(bundleName: string, abilityName: string): Promise;

以異步方法通過bundleName和abilityName獲取對應Icon的[PixelMap],使用Promise形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring要查詢的bundleName。
abilityNamestring要查詢的abilityName。

返回值:

類型說明
Promise返回值為[PixelMap]。

示例:

let bundleName = "com.example.myapplication";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityIcon(bundleName, abilityName)
.then((data) = > {
    console.info('Operation successful. Data: ' + JSON.stringify(data));
}).catch((error) = > {
    console.error('Operation failed. Cause: ' + JSON.stringify(error));
})

bundle.getAbilityIcon8+

getAbilityIcon(bundleName: string, abilityName: string, callback: AsyncCallback): void;

以異步方法通過bundleName和abilityName獲取對應Icon的[PixelMap],使用callback形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring要查詢的bundleName。
abilityNamestring要查詢的abilityName。
callbackAsyncCallback程序啟動作為入?yún)⒌幕卣{函數(shù),返回指定[PixelMap]。

示例:

let bundleName = "com.example.myapplication";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityIcon(bundleName, abilityName, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
})

bundle.getAbilityIcon9+

getAbilityIcon(bundleName: string, moduleName: string, abilityName: string): Promise;

以異步方法通過bundleName、moduleName和abilityName獲取對應Icon的[PixelMap],使用Promise形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring要查詢的bundleName。
moduleNamestringmoduleName。
abilityNamestring要查詢的abilityName。

返回值:

類型說明
Promise返回值為[PixelMap]。

示例:

let bundleName = "com.example.myapplication";
let moduleName = "entry";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityIcon(bundleName, moduleName, abilityName)
.then((data) = > {
    console.info('Operation successful. Data: ' + JSON.stringify(data));
}).catch((error) = > {
    console.error('Operation failed. Cause: ' + JSON.stringify(error));
})

bundle.getAbilityIcon9+

getAbilityIcon(bundleName: string, moduleName: string, abilityName: string, callback: AsyncCallback): void;

以異步方法通過bundleName、moduleName和abilityName獲取對應Icon的[PixelMap],使用callback形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
bundleNamestring要查詢的bundleName。
moduleNamestringmoduleName。
abilityNamestring要查詢的abilityName。
callbackAsyncCallback程序啟動作為入?yún)⒌幕卣{函數(shù),返回指定[PixelMap]。

示例:

let bundleName = "com.example.myapplication";
let moduleName = "entry";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityIcon(bundleName, moduleName, abilityName, (err, data) = > {
    if (err) {
        console.error('Operation failed. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Operation successful. Data:' + JSON.stringify(data));
})

bundle.queryExtensionAbilityInfos9+

queryExtensionAbilityInfos(want: Want, extensionType: number, extensionFlags: number, userId?: number): Promise>

以異步方法根據(jù)給定的意圖獲取ExtensionAbility信息,使用Promise形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
want[Want]包含要查詢的應用程序包名稱的意圖。
extensionTypenumber用于指定查找的extensionAbilityInfo的類型。 默認值:0,取值范圍:枚舉值: [ExtensionAbilityType]
extensionFlagsnumber用于指定返回ExtensionAbilityInfo信息。默認值:0,取值范圍:枚舉值: [ExtensionFlags]
userIdnumber用戶ID。默認值:調用方所在用戶,取值范圍:大于等于0

返回值:

類型說明
Promise>Promise形式返回ExtensionAbility信息。

示例:

let extensionType = 0;
let extensionFlags = 0;
let userId = 100;
let want = {
    bundleName : "com.example.myapplication",
    abilityName : "com.example.myapplication.MainAbility"
};
bundle.queryExtensionAbilityInfos(want, extensionType, extensionFlags, userId)
.then((data) = > {
    console.info('Operation successful. Data: ' + JSON.stringify(data));
}).catch((error) = > {
    console.error('Operation failed. Cause: ' + JSON.stringify(error));
})

bundle.queryExtensionAbilityInfos9+

queryExtensionAbilityInfos(want: Want, extensionType: number, extensionFlags: number, userId: number, callback: AsyncCallback>): void

以異步方法根據(jù)給定的意圖獲取ExtensionAbility信息,使用callback形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
want[Want]指示包含要查詢的應用程序包名稱的意圖。
extensionTypenumber用于指定查找的extensionAbilityInfo的類型。 默認值:0,取值范圍:枚舉值: [ExtensionAbilityType]
extensionFlagsnumber用于指定返回ExtensionAbilityInfo信息。默認值:0,取值范圍:枚舉值: [ExtensionFlags]
userIdnumber用戶ID。默認值:調用方所在用戶,取值范圍:大于等于0
callbackAsyncCallback>程序啟動作為入?yún)⒌幕卣{函數(shù),返回ExtensionAbility信息。

示例:

let extensionType = 0;
let extensionFlags = 0;
let userId = 100;
let want = {
    bundleName : "com.example.myapplication",
    abilityName : "com.example.myapplication.MainAbility"
};
const receiver = function onReceive(err, data) {
    var errValue = JSON.stringify(err)
    var dataValue = JSON.stringify(data)
    console.error('Operation failed. Cause: ' + errValue);
    console.error('Operation failed. Cause: ' + dataValue);
}
bundle.queryExtensionAbilityInfos(want, extensionType, extensionFlags, userId, receiver)

bundle.queryExtensionAbilityInfos9+

queryExtensionAbilityInfos(want: Want, extensionType: number, extensionFlags: number, callback: AsyncCallback>): void;

以異步方法根據(jù)給定的意圖獲取ExtensionAbility信息,使用callback形式返回結果。

需要權限:

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO

系統(tǒng)能力:

SystemCapability.BundleManager.BundleFramework

參數(shù):

名稱類型必填描述
want[Want](指示包含要查詢的應用程序包名稱的意圖。
extensionTypenumber用于指定查找的extensionAbilityInfo的類型。 默認值:0,取值范圍:枚舉值: [ExtensionAbilityType]
extensionFlagsnumber用于指定返回ExtensionAbilityInfo信息。默認值:0,取值范圍:枚舉值: [ExtensionFlags]
callbackAsyncCallback>程序啟動作為入?yún)⒌幕卣{函數(shù),返回ExtensionAbility信息。

示例:

let extensionType = 0;
let extensionFlags = 0;
let want = {
    bundleName : "com.example.myapplication",
    abilityName : "com.example.myapplication.MainAbility"
};
const receiver = function onReceive(err, data) {
    var errValue = JSON.stringify(err)
    var dataValue = JSON.stringify(data)
    console.error('Operation failed. Cause: ' + errValue);
    console.error('Operation failed. Cause: ' + dataValue);
}
bundle.queryExtensionAbilityInfos(want, extensionType, extensionFlags, receiver)

InstallErrorCode

系統(tǒng)能力: SystemCapability.BundleManager.BundleFramework

名稱默認值說明
SUCCESS0安裝成功
STATUS_INSTALL_FAILURE1安裝失?。ú淮嬖诎惭b的應用)
STATUS_INSTALL_FAILURE_ABORTED2安裝中止
STATUS_INSTALL_FAILURE_INVALID3安裝參數(shù)無效
STATUS_INSTALL_FAILURE_CONFLICT4安裝沖突 (常見于升級和已有應用基本信息不一致)
STATUS_INSTALL_FAILURE_STORAGE5存儲包信息失敗
STATUS_INSTALL_FAILURE_INCOMPATIBLE6安裝不兼容(常見于版本降級安裝或者簽名信息錯誤)
STATUS_UNINSTALL_FAILURE7卸載失敗 (不存在卸載的應用)
STATUS_UNINSTALL_FAILURE_BLOCKED8卸載中止 (沒有使用)
STATUS_UNINSTALL_FAILURE_ABORTED9卸載中止 (參數(shù)無效導致)
STATUS_UNINSTALL_FAILURE_CONFLICT10卸載沖突 (卸載系統(tǒng)應用失敗, 結束應用進程失?。?/td>
STATUS_INSTALL_FAILURE_DOWNLOAD_TIMEOUT0x0B安裝失敗 (下載超時)
STATUS_INSTALL_FAILURE_DOWNLOAD_FAILED0x0C安裝失敗 (下載失?。?/td>
STATUS_RECOVER_FAILURE_INVALID8+0x0D恢復預置應用失敗
STATUS_ABILITY_NOT_FOUND0x40Ability未找到
STATUS_BMS_SERVICE_ERROR0x41BMS服務錯誤
STATUS_FAILED_NO_SPACE_LEFT8+0x42設備空間不足
STATUS_GRANT_REQUEST_PERMISSIONS_FAILED8+0x43應用授權失敗
STATUS_INSTALL_PERMISSION_DENIED8+0x44安裝權限拒絕
STATUS_UNINSTALL_PERMISSION_DENIED8+0x45卸載權限拒絕

BundleFlag

包的標志

系統(tǒng)能力: 以下各項對應的系統(tǒng)能力均為SystemCapability.BundleManager.BundleFramework

名稱默認值說明
GET_BUNDLE_DEFAULT0x00000000獲取默認的應用信息
GET_BUNDLE_WITH_ABILITIES0x00000001獲取包括Ability信息的包信息
GET_ABILITY_INFO_WITH_PERMISSION0x00000002獲取包括權限的Ability信息
GET_ABILITY_INFO_WITH_APPLICATION0x00000004獲取包括應用的Ability信息
GET_APPLICATION_INFO_WITH_PERMISSION0x00000008獲取包括權限的應用信息
GET_BUNDLE_WITH_REQUESTED_PERMISSION0x00000010獲取包括所需權限的包信息
GET_ABILITY_INFO_WITH_METADATA8+0x00000020獲取ability的元數(shù)據(jù)信息
GET_BUNDLE_WITH_EXTENSION_ABILITY9+0x00000020獲取包括Ability信息的擴展包信息
GET_APPLICATION_INFO_WITH_METADATA8+0x00000040獲取應用的元數(shù)據(jù)信息
GET_ABILITY_INFO_SYSTEMAPP_ONLY8+0x00000080獲取僅包括系統(tǒng)應用的ability信息
GET_ABILITY_INFO_WITH_DISABLE8+0x00000100獲取包括被禁用的ability信息
GET_APPLICATION_INFO_WITH_DISABLE8+0x00000200獲取包括被禁用的應用信息
GET_ALL_APPLICATION_INFO0xFFFF0000獲取應用所有的信息

BundleOptions

包的選項

系統(tǒng)能力: SystemCapability.BundleManager.BundleFramework

名稱類型可讀可寫說明
userIdnumber用戶ID。默認值:調用方所在用戶,取值范圍:大于等于0。

AbilityType

Ability類型

系統(tǒng)能力: 以下各項對應的系統(tǒng)能力均為SystemCapability.BundleManager.BundleFramework

名稱類型說明
UNKNOWN未知Ability類型
PAGEAbility有一個UI界面
SERVICEAbility沒有UI界面
DATAAbility用于提供數(shù)據(jù)訪問服務

DisplayOrientation

屏幕顯示方向

系統(tǒng)能力: 以下各項對應的系統(tǒng)能力均為SystemCapability.BundleManager.BundleFramework

名稱類型說明
UNSPECIFIED屏幕方向--不指定
LANDSCAPE屏幕方向--橫屏
PORTRAIT屏幕方向--豎屏
FOLLOW_RECENT屏幕方向--緊跟上一個組件

LaunchMode

啟動模式

系統(tǒng)能力: 以下各項對應的系統(tǒng)能力均為SystemCapability.BundleManager.BundleFramework

名稱類型說明
SINGLETON0Ability只有一個示例
STANDARD1Ability有多個示例

AbilitySubType

Ability的子類型

系統(tǒng)能力: 以下各項對應的系統(tǒng)能力均為SystemCapability.BundleManager.BundleFramework

名稱類型說明
UNSPECIFIED0未定義Ability子類型
CA1Ability子類型是帶有 UI 的服務

ExtensionAbilityType9+

ExtensionAbility的類型

系統(tǒng)能力: 以下各項對應的系統(tǒng)能力均為SystemCapability.BundleManager.BundleFramework

名稱類型說明
FORM9+0ExtensionAbility的類型包括卡片
WORK_SCHEDULER9+1ExtensionAbility的類型包括行程安排
INPUT_METHOD9+2ExtensionAbility的類型包括輸入法
SERVICE9+3ExtensionAbility的類型包括服務
ACCESSIBILITY9+4ExtensionAbility的類型包括無障礙
DATA_SHARE9+5ExtensionAbility的類型包括數(shù)據(jù)共享
FILE_SHARE9+6ExtensionAbility的類型包括文件共享
STATIC_SUBSCRIBER9+7ExtensionAbility的類型包括訂閱者
WALLPAPER9+8ExtensionAbility的類型包括墻紙
BACKUP9+9ExtensionAbility的類型包括數(shù)據(jù)備份恢復
WINDOW9+10ExtensionAbility的窗口類型擴展信息
UNSPECIFIED9+20ExtensionAbility未指定類型

ExtensionFlag9+

擴展標志

系統(tǒng)能力: 以下各項對應的系統(tǒng)能力均為SystemCapability.BundleManager.BundleFramework

名稱默認值說明
GET_EXTENSION_INFO_DEFAULT9+0x00000000獲取默認的extensionAbilityInfo
GET_EXTENSION_INFO_WITH_PERMISSION9+0x00000002獲取攜帶權限信息的extensionAbilityInfo
GET_EXTENSION_INFO_WITH_APPLICATION9+0x00000004獲取攜帶應用信息的extensionAbilityInfo
GET_EXTENSION_INFO_WITH_METADATA9+0x00000020獲取攜帶元數(shù)據(jù)信息的extensionAbilityInfo

ColorMode

顏色模式

系統(tǒng)能力: 以下各項對應的系統(tǒng)能力均為SystemCapability.BundleManager.BundleFramework

名稱類型說明
AUTO_MODE-1自動模式
DARK_MODE0黑色模式
LIGHT_MODE1亮度模式

GrantStatus

授予狀態(tài)

系統(tǒng)能力: 以下各項對應的系統(tǒng)能力均為SystemCapability.BundleManager.BundleFramework

名稱HarmonyOSOpenHarmony鴻蒙文檔籽料:mau123789是v直接拿類型說明
PERMISSION_DENIED-1拒絕許可
PERMISSION_GRANTED0批準

搜狗高速瀏覽器截圖20240326151344.png

UpgradeFlag

此項僅供內部系統(tǒng)使用

系統(tǒng)API:

此接口為系統(tǒng)接口,三方應用不支持調用

系統(tǒng)能力: 以下各項對應的系統(tǒng)能力均為SystemCapability.BundleManager.BundleFramework

名稱說明
NOT_UPGRADE9+0模塊無需升級
SINGLE_UPGRADE9+1單個模塊需要升級
RELATION_UPGRADE9+2關系模塊需要升級

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 接口
    +關注

    關注

    33

    文章

    8454

    瀏覽量

    150742
  • bundled
    +關注

    關注

    0

    文章

    4

    瀏覽量

    9085
  • bms
    bms
    +關注

    關注

    106

    文章

    968

    瀏覽量

    65639
  • 鴻蒙
    +關注

    關注

    57

    文章

    2305

    瀏覽量

    42696
收藏 人收藏

    評論

    相關推薦

    鴻蒙開發(fā)接口Ability框架:【DataAbilityHelper模塊(JSSDK接口)】

    模塊首批接口從API version 7開始支持。后續(xù)版本的新增接口,采用上角標單獨標記接口的起始版本。
    的頭像 發(fā)表于 05-13 16:29 ?571次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b>Ability框架:【DataAbilityHelper<b class='flag-5'>模塊</b>(<b class='flag-5'>JS</b><b class='flag-5'>端</b><b class='flag-5'>SDK</b><b class='flag-5'>接口</b>)】

    鴻蒙開發(fā)接口應用程序包管理:【@ohos.bundleState (設備使用信息統(tǒng)計)】

    模塊提供設備使用信息統(tǒng)計能力。
    的頭像 發(fā)表于 05-25 16:34 ?1505次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>應用程序包管理</b>:【@ohos.bundleState (設備使用信息統(tǒng)計)】

    鴻蒙開發(fā)接口應用程序包管理:【@ohos.zlib (Zip模塊)】

    模塊首批接口從API version 7開始支持。后續(xù)版本的新增接口,采用上角標單獨標記接口的起始版本。
    的頭像 發(fā)表于 05-25 16:38 ?1544次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>應用程序包管理</b>:【@ohos.zlib (Zip<b class='flag-5'>模塊</b>)】

    鴻蒙開發(fā)接口應用程序包管理:【ApplicationInfo】

    模塊首批接口從API version 7 開始支持。后續(xù)版本的新增 接口,采用上角標單獨標記接口的起始版本。
    的頭像 發(fā)表于 05-25 16:40 ?1724次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>應用程序包管理</b>:【ApplicationInfo】

    鴻蒙開發(fā)接口應用程序包管理:【BundleInfo】

    模塊首批接口從API version 7 開始支持。后續(xù)版本的新增接口,采用上角標單獨標記接口的起始版本。
    的頭像 發(fā)表于 05-25 16:43 ?1810次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>應用程序包管理</b>:【BundleInfo】

    鴻蒙JS開發(fā)接口請求loading怎么解決?

    鴻蒙JS開發(fā)接口請求loading?
    發(fā)表于 05-10 10:24

    OpenHarmony應用程序包整體說明

    ,便于應用市場對應用程序包的分發(fā)管理。 應用軟件所包含的功能多種多樣,將不同的功能特性按模塊來劃分和管理是一種良好的設計方式。OpenHarmony提供了同一
    發(fā)表于 09-20 15:34

    如何使用Xilinx SDK創(chuàng)建Linux應用程序,并進行開發(fā)和調試

    了解如何使用Xilinx SDK創(chuàng)建Linux應用程序。 我們還將重點介紹和演示支持Linux應用程序開發(fā)和調試的不同方面的SDK功能。
    的頭像 發(fā)表于 11-20 07:03 ?1w次閱讀

    鴻蒙開發(fā)接口應用程序包管理:【AbilityInfo】

    模塊首批接口從API version 7 開始支持。后續(xù)版本的新增接口,采用上角標單獨標記接口的起始版本。
    的頭像 發(fā)表于 05-23 18:02 ?473次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>應用程序包管理</b>:【AbilityInfo】

    鴻蒙開發(fā)接口應用程序包管理:【CustomizeData】

    模塊首批接口從API version 7 開始支持。后續(xù)版本的新增接口,采用上角標單獨標記接口的起始版本。
    的頭像 發(fā)表于 05-24 16:14 ?276次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>應用程序包管理</b>:【CustomizeData】

    鴻蒙開發(fā)接口應用程序包管理:【ExtensionAbilityInfo】

    模塊首批接口從API version 9 開始支持。后續(xù)版本的新增接口,采用上角標單獨標記接口的起始版本。
    的頭像 發(fā)表于 05-25 16:46 ?1467次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>應用程序包管理</b>:【ExtensionAbilityInfo】

    鴻蒙開發(fā)接口應用程序包管理:【HapModuleInfo】

    模塊首批接口從API version 7 開始支持。后續(xù)版本的新增接口,采用上角標單獨標記接口的起始版本
    的頭像 發(fā)表于 05-25 16:49 ?1537次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>應用程序包管理</b>:【HapModuleInfo】

    鴻蒙開發(fā)接口應用程序包管理:【Metadata】

    模塊首批接口從API version 9 開始支持。后續(xù)版本的新增接口,采用上角標單獨標記接口的起始版本。
    的頭像 發(fā)表于 05-26 21:34 ?224次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>應用程序包管理</b>:【Metadata】

    鴻蒙開發(fā)接口應用程序包管理:【ModuleInfo】

    模塊首批接口從API version 7 開始支持。后續(xù)版本的新增接口,采用上角標單獨標記接口的起始版本。
    的頭像 發(fā)表于 05-26 22:28 ?289次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>應用程序包管理</b>:【ModuleInfo】

    鴻蒙開發(fā)文件管理:【@ohos.statfs (statfs)】

    模塊提供文件系統(tǒng)相關存儲信息的功能,向應用程序提供獲取文件系統(tǒng)總字節(jié)數(shù)、空閑字節(jié)數(shù)的JS接口。
    的頭像 發(fā)表于 06-13 09:46 ?251次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b>文件<b class='flag-5'>管理</b>:【@ohos.statfs (statfs)】