1# @ohos.bundle.bundleMonitor (bundleMonitor模块) 2 3本模块提供监听应用安装,卸载,更新的能力。 4 5> **说明:** 6> 7> 本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8 9## 导入模块 10 11```ts 12import bundleMonitor from '@ohos.bundle.bundleMonitor'; 13``` 14 15## 权限列表 16 17| 权限 | 权限等级 | 描述 | 18| ------------------------------------ | ----------- | ------------------------------ | 19| ohos.permission.LISTEN_BUNDLE_CHANGE | system_core | 可监听应用的安装,卸载,更新。 | 20 21权限等级参考[权限等级说明](../../security/accesstoken-overview.md) 22 23## BundleChangeInfo 24 25**系统能力:** SystemCapability.BundleManager.BundleFramework.Core 26 27**系统API:** 此接口为系统接口,三方应用不支持调用 28 29| 名称 | 类型 | 可读 | 可写 | 说明 | 30| ---------- | ------ | ---- | ---- | -------------------------- | 31| bundleName | string | 是 | 否 | 应用状态发生变化的应用包名。 | 32| userId | number | 是 | 否 | 应用状态发生变化的用户id。 | 33 34## bundleMonitor.on 35 36on(type: BundleChangedEvent, callback: Callback\<BundleChangedInfo>): void; 37 38注册监听应用的安装,卸载,更新。 39 40**需要权限:** ohos.permission.LISTEN_BUNDLE_CHANGE 41 42**系统API:** 此接口为系统接口,三方应用不支持调用 43 44**系统能力:** SystemCapability.BundleManager.BundleFramework.Core 45 46**参数:** 47 48| 参数名 | 类型 | 必填 | 说明 | 49| ---------------------------- | -------- | ---- | ------------------ | 50| type| BundleChangedEvent| 是 | 注册监听的事件类型。 | 51| callback | callback\<BundleChangedInfo>| 是 | 注册监听的回调函数。 | 52 53**示例:** 54 55```ts 56import bundleMonitor from '@ohos.bundle.bundleMonitor'; 57 58try { 59 bundleMonitor.on('add', (bundleChangeInfo) => { 60 console.info(`bundleName : ${bundleChangeInfo.bundleName} userId : ${bundleChangeInfo.userId}`); 61 }) 62} catch (errData) { 63 console.log(`errData is errCode:${errData.errCode} message:${errData.message}`); 64} 65``` 66 67## bundleMonitor.off 68 69off(type: BundleChangedEvent, callback?: Callback\<BundleChangedInfo>): void; 70 71注销监听应用的安装,卸载,更新。 72 73**需要权限:** ohos.permission.LISTEN_BUNDLE_CHANGE 74 75**系统API:** 此接口为系统接口,三方应用不支持调用 76 77**系统能力:** SystemCapability.BundleManager.BundleFramework.Core 78 79**参数:** 80 81| 参数名 | 类型 | 必填 | 说明 | 82| ---------------------------- | -------- | ---- | ---------------------------------------------------------- | 83| type| BundleChangedEvent| 是 | 注销监听的事件类型。 | 84| callback | callback\<BundleChangedInfo>| 否 | 注销监听的回调函数,当为空时表示注销当前事件的所有callback。 | 85 86**示例:** 87 88```ts 89import bundleMonitor from '@ohos.bundle.bundleMonitor'; 90 91try { 92 bundleMonitor.off('add'); 93} catch (errData) { 94 console.log(`errData is errCode:${errData.errCode} message:${errData.message}`); 95} 96``` 97 98