• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# 移除粘性公共事件(仅对系统应用开放)
2
3
4## 场景介绍
5
6已发出的粘性公共事件后来订阅者也可以接收到,如果这个事件不再转发,需要事件发布者进行移除。OpenHarmony提供了粘性公共事件移除接口。
7
8## 接口说明
9
10参考[接口文档](../reference/apis/js-apis-commonEventManager.md)。
11
12| 接口名 | 接口描述 |
13| -------- | -------- |
14| removeStickyCommonEvent(event: string, callback: AsyncCallback\<void>): void | 移除粘性公共事件 |
15
16
17## 开发步骤
18
191. 需要申请`ohos.permission.COMMONEVENT_STICKY`权限,配置方式请参见[配置文件权限声明](../security/accesstoken-guidelines.md#配置文件权限声明)。
20
212. 导入模块。
22
23   ```ts
24   import commonEventManager from '@ohos.commonEventManager';
25   import Base from '@ohos.base';
26   ```
27
283. 调用[`removeStickyCommonEvent()`](../reference/apis/js-apis-commonEventManager.md#commoneventmanagerremovestickycommonevent10)方法移除对应的粘性公共事件。
29
30   > **说明:**
31   >
32   > 移除的粘性公共事件,必须是本应用之前已发布的粘性公共事件,发布粘性公共事件参考[公共事件发布](common-event-publish.md)章节。
33
34   ```ts
35   commonEventManager.removeStickyCommonEvent("sticky_event", (err: Base.BusinessError) => { // sticky_event粘性公共事件名
36     if (err) {
37       console.error(`Failed to remove sticky common event. Code is ${err.code}, message is ${err.message}`);
38       return;
39     }
40     console.info(`Succeeded in removeing sticky event.`);
41   });
42   ```
43
44