harmony 鸿蒙@ohos.bundle.bundleMonitor (bundleMonitor模块)

  • 2022-12-05
  • 浏览 (754)

@ohos.bundle.bundleMonitor (bundleMonitor模块)

本模块提供监听应用安装,卸载,更新的能力。

说明:

本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

import bundleMonitor from '@ohos.bundle.bundleMonitor';

权限列表

权限 权限等级 描述
ohos.permission.LISTEN_BUNDLE_CHANGE system_basic 可监听应用的安装,卸载,更新。

权限等级参考权限等级说明

BundleChangeInfo

系统能力: SystemCapability.BundleManager.BundleFramework.Core

系统API: 此接口为系统接口。

名称 类型 可读 可写 说明
bundleName string 应用状态发生变化的应用Bundle名称。
userId number 应用状态发生变化的用户id。

BundleChangedEvent

监听的事件类型。

系统能力: SystemCapability.BundleManager.BundleFramework.Core

系统API: 此接口为系统接口。

名称 说明
add 监听应用事件。
update 监听更新事件。
remove 监听删除事件。

bundleMonitor.on

on(type: BundleChangedEvent, callback: Callback<BundleChangedInfo>): void;

注册监听应用的安装,卸载,更新。

需要权限: ohos.permission.LISTEN_BUNDLE_CHANGE

系统API: 此接口为系统接口。

系统能力: SystemCapability.BundleManager.BundleFramework.Core

参数:

参数名 类型 必填 说明
type BundleChangedEvent 注册监听的事件类型。
callback callback<BundleChangedInfo> 注册监听的回调函数。

示例:

import bundleMonitor from '@ohos.bundle.bundleMonitor';
import { BusinessError } from '@ohos.base';

try {
    bundleMonitor.on('add', (bundleChangeInfo) => {
        console.info(`bundleName : ${bundleChangeInfo.bundleName} userId : ${bundleChangeInfo.userId}`);
	})
} catch (errData) {
    let message = (errData as BusinessError).message;
    let errCode = (errData as BusinessError).code;
    console.log(`errData is errCode:${errCode}  message:${message}`);
}

bundleMonitor.off

off(type: BundleChangedEvent, callback?: Callback<BundleChangedInfo>): void;

注销监听应用的安装,卸载,更新。

需要权限: ohos.permission.LISTEN_BUNDLE_CHANGE

系统API: 此接口为系统接口。

系统能力: SystemCapability.BundleManager.BundleFramework.Core

参数:

参数名 类型 必填 说明
type BundleChangedEvent 注销监听的事件类型。
callback callback<BundleChangedInfo> 注销监听的回调函数,默认值:注销当前事件的所有callback。

示例:

import bundleMonitor from '@ohos.bundle.bundleMonitor';
import { BusinessError } from '@ohos.base';

try {
    bundleMonitor.off('add');
} catch (errData) {
    let message = (errData as BusinessError).message;
    let errCode = (errData as BusinessError).code;
    console.log(`errData is errCode:${errCode}  message:${message}`);
}

你可能感兴趣的鸿蒙文章

harmony 鸿蒙接口

harmony 鸿蒙系统公共事件定义(待停用)

harmony 鸿蒙系统公共事件定义

harmony 鸿蒙开发说明

harmony 鸿蒙企业设备管理概述(仅对系统应用开放)

harmony 鸿蒙BundleStatusCallback

harmony 鸿蒙@ohos.bundle.innerBundleManager (innerBundleManager模块)

harmony 鸿蒙@ohos.distributedBundle (分布式包管理)

harmony 鸿蒙@ohos.bundle (Bundle模块)

harmony 鸿蒙@ohos.enterprise.EnterpriseAdminExtensionAbility (企业设备管理扩展能力)

0  赞