• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.commonEvent (公共事件模块)
2
3本模块提供了公共事件的能力,包括公共事件的权限列表,发布公共事件,订阅或取消订阅公共事件,获取或修改公共事件结果代码、结果数据等。
4
5> **说明:**
6> - 从API Version 9开始,该接口不再维护,推荐使用新接口[@ohos.commonEventManager](js-apis-commonEventManager.md)。
7> - 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8
9## 导入模块
10
11```js
12import CommonEvent from '@ohos.commonEvent';
13```
14
15## Support
16
17系统公共事件是指由系统服务或系统应用发布的事件,订阅这些系统公共事件需要特定的权限。发布或订阅这些事件需要使用如下链接中的枚举定义。
18
19全部系统公共事件枚举定义请参见[系统公共事件定义](./commonEvent-definitions.md)。
20
21## CommonEvent.publish<sup>(deprecated)</sup>
22
23publish(event: string, callback: AsyncCallback\<void>): void
24
25发布公共事件(callback形式)。
26
27> **说明:**
28> 从 API version 7开始支持,从API version 9开始废弃。建议使用[commonEventManager.publish](js-apis-commonEventManager.md#commoneventmanagerpublish)替代。
29
30**系统能力:** `SystemCapability.Notification.CommonEvent`
31
32**参数:**
33
34| 名称     | 类型                 | 必填 | 说明                   |
35| -------- | -------------------- | ---- | ---------------------- |
36| event    | string               | 是   | 表示要发送的公共事件。 |
37| callback | AsyncCallback\<void> | 是   | 表示被指定的回调方法。 |
38
39**示例:**
40
41```js
42//发布公共事件回调
43function publishCallBack(err) {
44	if (err.code) {
45        console.error("publish failed " + JSON.stringify(err));
46    } else {
47        console.info("publish");
48    }
49}
50
51//发布公共事件
52CommonEvent.publish("event", publishCallBack);
53```
54
55## CommonEvent.publish<sup>(deprecated)</sup>
56
57publish(event: string, options: CommonEventPublishData, callback: AsyncCallback\<void>): void
58
59发布公共事件指定发布信息(callback形式)。
60
61> **说明:**
62> 从 API version 7开始支持,从API version 9开始废弃。建议使用[commonEventManager.publish](js-apis-commonEventManager.md#commoneventmanagerpublish-1)替代。
63
64**系统能力:** `SystemCapability.Notification.CommonEvent`
65
66**参数:**
67
68| 名称     | 类型                   | 必填 | 说明                   |
69| -------- | ---------------------- | ---- | ---------------------- |
70| event    | string                 | 是   | 表示要发布的公共事件。  |
71| options  | [CommonEventPublishData](./js-apis-inner-commonEvent-commonEventPublishData.md) | 是   | 表示发布公共事件的属性。 |
72| callback | AsyncCallback\<void>   | 是   | 表示被指定的回调方法。  |
73
74**示例:**
75
76
77```js
78//公共事件相关信息
79let options = {
80	code: 0,			 //公共事件的初始代码
81	data: "initial data",//公共事件的初始数据
82	isOrdered: true	 //有序公共事件
83}
84
85//发布公共事件回调
86function publishCallBack(err) {
87	if (err.code) {
88        console.error("publish failed " + JSON.stringify(err));
89    } else {
90        console.info("publish");
91    }
92}
93
94//发布公共事件
95CommonEvent.publish("event", options, publishCallBack);
96```
97
98## CommonEvent.publishAsUser<sup>(deprecated)</sup>
99
100publishAsUser(event: string, userId: number, callback: AsyncCallback\<void>): void
101
102向指定用户发布公共事件(callback形式)。
103
104> **说明:**
105> 从 API version 8开始支持,从API version 9开始废弃。建议使用[commonEventManager.publishAsUser](js-apis-commonEventManager.md#commoneventmanagerpublishasuser)替代。
106
107**系统能力:** `SystemCapability.Notification.CommonEvent`
108
109**系统API**:此接口为系统接口,三方应用不支持调用。
110
111**参数:**
112
113| 名称     | 类型                 | 必填 | 说明                               |
114| -------- | -------------------- | ---- | ---------------------------------- |
115| event    | string               | 是   | 表示要发送的公共事件。             |
116| userId   | number               | 是   | 表示指定向该用户ID发送此公共事件。 |
117| callback | AsyncCallback\<void> | 是   | 表示被指定的回调方法。             |
118
119**示例:**
120
121```js
122//发布公共事件回调
123function publishAsUserCallBack(err) {
124	if (err.code) {
125        console.error("publishAsUser failed " + JSON.stringify(err));
126    } else {
127        console.info("publishAsUser");
128    }
129}
130
131//指定发送的用户
132let userId = 100;
133
134//发布公共事件
135CommonEvent.publishAsUser("event", userId, publishAsUserCallBack);
136```
137
138## CommonEvent.publishAsUser<sup>(deprecated)</sup>
139
140publishAsUser(event: string, userId: number, options: CommonEventPublishData, callback: AsyncCallback\<void>): void
141
142向指定用户发布公共事件并指定发布信息(callback形式)。
143
144> **说明:**
145> 从 API version 8开始支持,从API version 9开始废弃。建议使用[commonEventManager.publishAsUser](js-apis-commonEventManager.md#commoneventmanagerpublishasuser-1)替代。
146
147**系统能力:** `SystemCapability.Notification.CommonEvent`
148
149**系统API**:此接口为系统接口,三方应用不支持调用。
150
151**参数:**
152
153| 名称     | 类型                   | 必填 | 说明                   |
154| -------- | ---------------------- | ---- | ---------------------- |
155| event    | string                 | 是   | 表示要发布的公共事件。  |
156| userId   | number | 是 | 表示指定向该用户ID发送此公共事件。 |
157| options  | [CommonEventPublishData](./js-apis-inner-commonEvent-commonEventPublishData.md) | 是   | 表示发布公共事件的属性。 |
158| callback | AsyncCallback\<void>   | 是   | 表示被指定的回调方法。  |
159
160**示例:**
161
162
163```js
164//公共事件相关信息
165let options = {
166	code: 0,			 //公共事件的初始代码
167	data: "initial data",//公共事件的初始数据
168}
169
170//发布公共事件回调
171function publishAsUserCallBack(err) {
172	if (err.code) {
173        console.error("publishAsUser failed " + JSON.stringify(err));
174    } else {
175        console.info("publishAsUser");
176    }
177}
178
179//指定发送的用户
180let userId = 100;
181
182//发布公共事件
183CommonEvent.publishAsUser("event", userId, options, publishAsUserCallBack);
184```
185
186## CommonEvent.createSubscriber<sup>(deprecated)</sup>
187
188createSubscriber(subscribeInfo: CommonEventSubscribeInfo, callback: AsyncCallback<CommonEventSubscriber>): void
189
190创建订阅者(callback形式)。
191
192> **说明:**
193>从 API version 7开始支持,从API version 9开始废弃。建议使用[commonEventManager.createSubscriber](js-apis-commonEventManager.md#commoneventmanagercreatesubscriber)替代。
194
195**系统能力:** `SystemCapability.Notification.CommonEvent`
196
197**参数:**
198
199| 名称          | 类型                                                         | 必填 | 说明                       |
200| ------------- | ------------------------------------------------------------ | ---- | -------------------------- |
201| subscribeInfo | [CommonEventSubscribeInfo](./js-apis-inner-commonEvent-commonEventSubscribeInfo.md)        | 是   | 表示订阅信息。             |
202| callback      | AsyncCallback\<[CommonEventSubscriber](./js-apis-inner-commonEvent-commonEventSubscriber.md)> | 是   | 表示创建订阅者的回调方法。 |
203
204**示例:**
205
206
207```js
208let subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
209
210//订阅者信息
211let subscribeInfo = {
212	events: ["event"]
213};
214
215//创建订阅者回调
216function createSubscriberCallBack(err, commonEventSubscriber) {
217    if (err.code) {
218        console.error("createSubscriber failed " + JSON.stringify(err));
219    } else {
220        console.info("createSubscriber");
221        subscriber = commonEventSubscriber;
222    }
223}
224
225//创建订阅者
226CommonEvent.createSubscriber(subscribeInfo, createSubscriberCallBack);
227```
228
229## CommonEvent.createSubscriber<sup>(deprecated)</sup>
230
231createSubscriber(subscribeInfo: CommonEventSubscribeInfo): Promise<CommonEventSubscriber>
232
233创建订阅者(Promise形式)。
234
235> **说明:**
236>从 API version 7开始支持,从API version 9开始废弃。建议使用[commonEventManager.createSubscriber](js-apis-commonEventManager.md#commoneventmanagercreatesubscriber-1)替代。
237
238**系统能力:** `SystemCapability.Notification.CommonEvent`
239
240**参数:**
241
242| 名称          | 类型                                                  | 必填 | 说明           |
243| ------------- | ----------------------------------------------------- | ---- | -------------- |
244| subscribeInfo | [CommonEventSubscribeInfo](./js-apis-inner-commonEvent-commonEventSubscribeInfo.md) | 是   | 表示订阅信息。 |
245
246**返回值:**
247| 类型                                                      | 说明             |
248| --------------------------------------------------------- | ---------------- |
249| Promise\<[CommonEventSubscriber](./js-apis-inner-commonEvent-commonEventSubscriber.md)> | 返回订阅者对象。 |
250
251**示例:**
252
253```js
254let subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
255
256//订阅者信息
257let subscribeInfo = {
258	events: ["event"]
259};
260
261//创建订阅者
262CommonEvent.createSubscriber(subscribeInfo).then((commonEventSubscriber) => {
263    console.info("createSubscriber");
264    subscriber = commonEventSubscriber;
265}).catch((err) => {
266    console.error("createSubscriber failed " + JSON.stringify(err));
267});
268```
269
270## CommonEvent.subscribe<sup>(deprecated)</sup>
271
272subscribe(subscriber: CommonEventSubscriber, callback: AsyncCallback<CommonEventData>): void
273
274订阅公共事件(callback形式)。
275
276> **说明:**
277>从 API version 7开始支持,从API version 9开始废弃。建议使用[commonEventManager.subscribe](js-apis-commonEventManager.md#commoneventmanagersubscribe)替代。
278
279**系统能力:** `SystemCapability.Notification.CommonEvent`
280
281**参数:**
282
283| 名称       | 类型                                                | 必填 | 说明                             |
284| ---------- | ---------------------------------------------------- | ---- | -------------------------------- |
285| subscriber | [CommonEventSubscriber](./js-apis-inner-commonEvent-commonEventSubscriber.md)     | 是   | 表示订阅者对象。                 |
286| callback   | AsyncCallback\<[CommonEventData](./js-apis-inner-commonEvent-commonEventData.md)> | 是   | 表示接收公共事件数据的回调函数。 |
287
288**示例:**
289
290```js
291let subscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
292
293//订阅者信息
294let subscribeInfo = {
295    events: ["event"]
296};
297
298//订阅公共事件回调
299function subscribeCallBack(err, data) {
300    if (err.code) {
301        console.error("subscribe failed " + JSON.stringify(err));
302    } else {
303        console.info("subscribe " + JSON.stringify(data));
304    }
305}
306
307//创建订阅者回调
308function createSubscriberCallBack(err, commonEventSubscriber) {
309    if (err.code) {
310        console.error("createSubscriber failed " + JSON.stringify(err));
311    } else {
312        console.info("createSubscriber");
313        subscriber = commonEventSubscriber;
314        //订阅公共事件
315        CommonEvent.subscribe(subscriber, subscribeCallBack);
316    }
317}
318
319//创建订阅者
320CommonEvent.createSubscriber(subscribeInfo, createSubscriberCallBack);
321```
322
323## CommonEvent.unsubscribe<sup>(deprecated)</sup>
324
325unsubscribe(subscriber: CommonEventSubscriber, callback?: AsyncCallback\<void>): void
326
327取消订阅公共事件(callback形式)。
328
329> **说明:**
330>从 API version 7开始支持,从API version 9开始废弃。建议使用[commonEventManager.subscribe](js-apis-commonEventManager.md#commoneventmanagerunsubscribe)替代。
331
332**系统能力:** `SystemCapability.Notification.CommonEvent`
333
334**参数:**
335
336| 名称       | 类型                                             | 必填 | 说明                     |
337| ---------- | ----------------------------------------------- | ---- | ------------------------ |
338| subscriber | [CommonEventSubscriber](./js-apis-inner-commonEvent-commonEventSubscriber.md) | 是   | 表示订阅者对象。         |
339| callback   | AsyncCallback\<void>                            | 否   | 表示取消订阅的回调方法。 |
340
341**示例:**
342
343```js
344let subscriber;	//用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作
345
346//订阅者信息
347let subscribeInfo = {
348	events: ["event"]
349};
350
351//订阅公共事件回调
352function subscribeCallBack(err, data) {
353    if (err.code) {
354        console.info("subscribe failed " + JSON.stringify(err));
355    } else {
356        console.info("subscribe " + JSON.stringify(data));
357    }
358}
359
360//创建订阅者回调
361function createSubscriberCallBack(err, commonEventSubscriber) {
362    if (err.code) {
363        console.info("createSubscriber failed " + JSON.stringify(err));
364    } else {
365        console.info("createSubscriber");
366        subscriber = commonEventSubscriber;
367        //订阅公共事件
368        CommonEvent.subscribe(subscriber, subscribeCallBack);
369    }
370}
371
372//取消订阅公共事件回调
373function unsubscribeCallBack(err) {
374	if (err.code) {
375        console.info("unsubscribe failed " + JSON.stringify(err));
376    } else {
377        console.info("unsubscribe");
378    }
379}
380
381//创建订阅者
382CommonEvent.createSubscriber(subscribeInfo, createSubscriberCallBack);
383
384//取消订阅公共事件
385CommonEvent.unsubscribe(subscriber, unsubscribeCallBack);
386```
387
388## CommonEventSubscriber
389
390### getCode
391
392getCode(callback: AsyncCallback\<number>): void
393
394获取公共事件的结果代码(callback形式)。
395
396**系统能力**:SystemCapability.Notification.CommonEvent
397
398**参数:**
399
400| 参数名   | 类型                   | 必填 | 说明               |
401| -------- | ---------------------- | ---- | ------------------ |
402| callback | AsyncCallback\<number> | 是   | 公共事件的结果代码。 |
403
404**示例:**
405
406```js
407let subscriber;	//创建成功的订阅者对象
408
409//获取有序公共事件的结果代码回调
410function getCodeCallback(err, Code) {
411    if (err.code) {
412        console.error("getCode failed " + JSON.stringify(err));
413    } else {
414        console.info("getCode " + JSON.stringify(Code));
415    }
416}
417subscriber.getCode(getCodeCallback);
418```
419
420### getCode
421
422getCode(): Promise\<number>
423
424获取公共事件的结果代码(Promise形式)。
425
426**系统能力**:SystemCapability.Notification.CommonEvent
427
428**返回值:**
429
430| 类型             | 说明                 |
431| ---------------- | -------------------- |
432| Promise\<number> | 公共事件的结果代码。 |
433
434**示例:**
435
436```js
437let subscriber;	//创建成功的订阅者对象
438
439subscriber.getCode().then((Code) => {
440    console.info("getCode " + JSON.stringify(Code));
441}).catch((err) => {
442    console.error("getCode failed " + JSON.stringify(err));
443});
444```
445
446### setCode
447
448setCode(code: number, callback: AsyncCallback\<void>): void
449
450设置公共事件的结果代码(callback形式)。
451
452**系统能力**:SystemCapability.Notification.CommonEvent
453
454**参数:**
455
456| 参数名   | 类型                 | 必填 | 说明                   |
457| -------- | -------------------- | ---- | ---------------------- |
458| code     | number               | 是   | 公共事件的结果代码。   |
459| callback | AsyncCallback\<void> | 是   | 表示被指定的回调方法。 |
460
461**示例:**
462
463```js
464let subscriber;	//创建成功的订阅者对象
465
466//设置有序公共事件的结果代码回调
467function setCodeCallback(err) {
468    if (err.code) {
469        console.error("setCode failed " + JSON.stringify(err));
470    } else {
471        console.info("setCode");
472    }
473}
474subscriber.setCode(1, setCodeCallback);
475```
476
477### setCode
478
479setCode(code: number): Promise\<void>
480
481设置公共事件的结果代码(Promise形式)。
482
483**系统能力**:SystemCapability.Notification.CommonEvent
484
485**参数:**
486
487| 参数名 | 类型   | 必填 | 说明               |
488| ------ | ------ | ---- | ------------------ |
489| code   | number | 是   | 公共事件的结果代码。 |
490
491**返回值:**
492
493| 类型             | 说明                 |
494| ---------------- | -------------------- |
495| Promise\<void>   | 返回一个Promise的结果。 |
496
497**示例:**
498
499```js
500let subscriber;	//创建成功的订阅者对象
501
502subscriber.setCode(1).then(() => {
503    console.info("setCode");
504}).catch((err) => {
505    console.error("setCode failed " + JSON.stringify(err));
506});
507```
508
509### getData
510
511getData(callback: AsyncCallback\<string>): void
512
513获取公共事件的结果数据(callback形式)。
514
515**系统能力**:SystemCapability.Notification.CommonEvent
516
517**参数:**
518
519| 参数名   | 类型                   | 必填 | 说明                 |
520| -------- | ---------------------- | ---- | -------------------- |
521| callback | AsyncCallback\<string> | 是   | 公共事件的结果数据。 |
522
523**示例:**
524
525```js
526let subscriber;	//创建成功的订阅者对象
527
528//获取有序公共事件的结果数据回调
529function getDataCallback(err, Data) {
530    if (err.code) {
531        console.error("getData failed " + JSON.stringify(err));
532    } else {
533        console.info("getData " + JSON.stringify(Data));
534    }
535}
536subscriber.getData(getDataCallback);
537```
538
539### getData
540
541getData(): Promise\<string>
542
543获取公共事件的结果数据(Promise形式)。
544
545**系统能力**:SystemCapability.Notification.CommonEvent
546
547**返回值:**
548
549| 类型             | 说明               |
550| ---------------- | ------------------ |
551| Promise\<string> | 公共事件的结果数据。 |
552
553**示例:**
554
555```js
556let subscriber;	//创建成功的订阅者对象
557
558subscriber.getData().then((Data) => {
559    console.info("getData " + JSON.stringify(Data));
560}).catch((err) => {
561    console.error("getData failed " + JSON.stringify(err));
562});
563```
564
565### setData
566
567setData(data: string, callback: AsyncCallback\<void>): void
568
569设置公共事件的结果数据(callback形式)。
570
571**系统能力**:SystemCapability.Notification.CommonEvent
572
573**参数:**
574
575| 参数名   | 类型                 | 必填 | 说明                 |
576| -------- | -------------------- | ---- | -------------------- |
577| data     | string               | 是   | 公共事件的结果数据。   |
578| callback | AsyncCallback\<void> | 是   | 表示被指定的回调方法。 |
579
580**示例:**
581
582```js
583let subscriber;	//创建成功的订阅者对象
584
585//设置有序公共事件的结果数据回调
586function setDataCallback(err) {
587    if (err.code) {
588        console.error("setData failed " + JSON.stringify(err));
589    } else {
590        console.info("setData");
591    }
592}
593subscriber.setData("publish_data_changed", setDataCallback);
594```
595
596### setData
597
598setData(data: string): Promise\<void>
599
600设置公共事件的结果数据(Promise形式)。
601
602**系统能力**:SystemCapability.Notification.CommonEvent
603
604**参数:**
605
606| 参数名 | 类型   | 必填 | 说明                 |
607| ------ | ------ | ---- | -------------------- |
608| data   | string | 是   | 公共事件的结果数据。 |
609
610**返回值:**
611
612| 类型             | 说明                 |
613| ---------------- | -------------------- |
614| Promise\<void>   | 返回一个Promise的结果。 |
615
616**示例:**
617
618```js
619let subscriber;	//创建成功的订阅者对象
620
621subscriber.setData("publish_data_changed").then(() => {
622    console.info("setData");
623}).catch((err) => {
624    console.error("setData failed " + JSON.stringify(err));
625});
626```
627
628### setCodeAndData
629
630setCodeAndData(code: number, data: string, callback:AsyncCallback\<void>): void
631
632设置公共事件的结果代码和结果数据(callback形式)。
633
634**系统能力**:SystemCapability.Notification.CommonEvent
635
636**参数:**
637
638| 参数名   | 类型                 | 必填 | 说明                   |
639| -------- | -------------------- | ---- | ---------------------- |
640| code     | number               | 是   | 公共事件的结果代码。   |
641| data     | string               | 是   | 公共事件的结果数据。   |
642| callback | AsyncCallback\<void> | 是   | 表示被指定的回调方法。 |
643
644**示例:**
645
646```js
647let subscriber;	//创建成功的订阅者对象
648
649//设置有序公共事件的结果代码和结果数据回调
650function setCodeDataCallback(err) {
651    if (err.code) {
652        console.error("setCodeAndData failed " + JSON.stringify(err));
653    } else {
654        console.info("setCodeDataCallback");
655    }
656}
657subscriber.setCodeAndData(1, "publish_data_changed", setCodeDataCallback);
658```
659
660### setCodeAndData
661
662setCodeAndData(code: number, data: string): Promise\<void>
663
664设置公共事件的结果代码和结果数据(Promise形式)。
665
666**系统能力**:SystemCapability.Notification.CommonEvent
667
668**参数:**
669
670| 参数名 | 类型   | 必填 | 说明                 |
671| ------ | ------ | ---- | -------------------- |
672| code   | number | 是   | 公共事件的结果代码。 |
673| data   | string | 是   | 公共事件的结果数据。 |
674
675**返回值:**
676
677| 类型             | 说明                 |
678| ---------------- | -------------------- |
679| Promise\<void>   | 返回一个Promise的结果。 |
680
681**示例:**
682
683```js
684let subscriber;	//创建成功的订阅者对象
685
686subscriber.setCodeAndData(1, "publish_data_changed").then(() => {
687    console.info("setCodeAndData");
688}).catch((err) => {
689    console.info("setCodeAndData failed " + JSON.stringify(err));
690});
691```
692
693### isOrderedCommonEvent
694
695isOrderedCommonEvent(callback: AsyncCallback\<boolean>): void
696
697查询当前公共事件的是否为有序公共事件(callback形式)。
698
699返回true代表是有序公共事件,false代表不是有序公共事件。
700
701**系统能力**:SystemCapability.Notification.CommonEvent
702
703**参数:**
704
705| 参数名   | 类型                    | 必填 | 说明                               |
706| -------- | ----------------------- | ---- | ---------------------------------- |
707| callback | AsyncCallback\<boolean> | 是   | 当前公共事件的是否为有序公共事件。 |
708
709**示例:**
710
711```js
712let subscriber;	//创建成功的订阅者对象
713
714//获取当前公共事件是否为有序事件的回调
715function isOrderedCallback(err, isOrdered) {
716    if (err.code) {
717        console.error("isOrderedCommonEvent failed " + JSON.stringify(err));
718    } else {
719        console.info("isOrdered " + JSON.stringify(isOrdered));
720    }
721}
722subscriber.isOrderedCommonEvent(isOrderedCallback);
723```
724
725### isOrderedCommonEvent
726
727isOrderedCommonEvent(): Promise\<boolean>
728
729查询当前公共事件的是否为有序公共事件(Promise形式)。
730
731返回true代表是有序公共事件,false代表不是有序公共事件。
732
733**系统能力**:SystemCapability.Notification.CommonEvent
734
735**返回值:**
736
737| 类型              | 说明                             |
738| ----------------- | -------------------------------- |
739| Promise\<boolean> | 当前公共事件的是否为有序公共事件。 |
740
741**示例:**
742
743```js
744let subscriber;	//创建成功的订阅者对象
745
746subscriber.isOrderedCommonEvent().then((isOrdered) => {
747    console.info("isOrdered " + JSON.stringify(isOrdered));
748}).catch((err) => {
749    console.error("isOrdered failed " + JSON.stringify(err));
750});
751```
752
753### isStickyCommonEvent
754
755isStickyCommonEvent(callback: AsyncCallback\<boolean>): void
756
757检查当前公共事件是否为一个粘性事件(callback形式)。
758
759返回true代表是粘性公共事件,false代表不是粘性公共事件。
760
761**系统能力**:SystemCapability.Notification.CommonEvent
762
763**参数:**
764
765| 参数名   | 类型                    | 必填 | 说明                               |
766| -------- | ----------------------- | ---- | ---------------------------------- |
767| callback | AsyncCallback\<boolean> | 是   | 当前公共事件的是否为粘性公共事件。 |
768
769**示例:**
770
771```js
772let subscriber;	//创建成功的订阅者对象
773
774//获取当前公共事件是否为粘性事件的回调
775function isStickyCallback(err, isSticky) {
776    if (err.code) {
777        console.error("isStickyCommonEvent failed " + JSON.stringify(err));
778    } else {
779        console.info("isSticky " + JSON.stringify(isSticky));
780    }
781}
782subscriber.isStickyCommonEvent(isStickyCallback);
783```
784
785### isStickyCommonEvent
786
787isStickyCommonEvent(): Promise\<boolean>
788
789检查当前公共事件是否为一个粘性事件(Promise形式)。
790
791返回true代表是粘性公共事件,false代表不是粘性公共事件。
792
793**系统能力**:SystemCapability.Notification.CommonEvent
794
795**返回值:**
796
797| 类型              | 说明                             |
798| ----------------- | -------------------------------- |
799| Promise\<boolean> | 当前公共事件的是否为粘性公共事件。 |
800
801**示例:**
802
803```js
804let subscriber;	//创建成功的订阅者对象
805
806subscriber.isStickyCommonEvent().then((isSticky) => {
807    console.info("isSticky " + JSON.stringify(isSticky));
808}).catch((err) => {
809    console.error("isSticky failed " + JSON.stringify(err));
810});
811```
812
813### abortCommonEvent
814
815abortCommonEvent(callback: AsyncCallback\<void>): void
816
817取消当前的公共事件,仅对有序公共事件有效,取消后,公共事件不再向下一个订阅者传递(callback形式)。
818
819**系统能力**:SystemCapability.Notification.CommonEvent
820
821**参数:**
822
823| 参数名   | 类型                 | 必填 | 说明                 |
824| -------- | -------------------- | ---- | -------------------- |
825| callback | AsyncCallback\<void> | 是   | 取消当前的公共事件。 |
826
827**示例:**
828
829```js
830let subscriber;	//创建成功的订阅者对象
831
832//取消当前有序公共事件的回调
833function abortCallback(err) {
834    if (err.code) {
835        console.error("abortCommonEvent failed " + JSON.stringify(err));
836    } else {
837        console.info("abortCommonEvent");
838    }
839}
840subscriber.abortCommonEvent(abortCallback);
841```
842
843### abortCommonEvent
844
845abortCommonEvent(): Promise\<void>
846
847取消当前的公共事件,仅对有序公共事件有效,取消后,公共事件不再向下一个订阅者传递(Promise形式)。
848
849**系统能力**:SystemCapability.Notification.CommonEvent
850
851**返回值:**
852
853| 类型             | 说明                 |
854| ---------------- | -------------------- |
855| Promise\<void>   | 返回一个Promise的结果。 |
856
857**示例:**
858
859```js
860let subscriber;	//创建成功的订阅者对象
861
862subscriber.abortCommonEvent().then(() => {
863    console.info("abortCommonEvent");
864}).catch((err) => {
865    console.error("abortCommonEvent failed " + JSON.stringify(err));
866});
867```
868
869### clearAbortCommonEvent
870
871clearAbortCommonEvent(callback: AsyncCallback\<void>): void
872
873清除当前公共事件的取消状态,仅对有序公共事件有效(callback形式)。
874
875**系统能力**:SystemCapability.Notification.CommonEvent
876
877**参数:**
878
879| 参数名   | 类型                 | 必填 | 说明                 |
880| -------- | -------------------- | ---- | -------------------- |
881| callback | AsyncCallback\<void> | 是   | 表示被指定的回调方法。 |
882
883**示例:**
884
885```js
886let subscriber;	//创建成功的订阅者对象
887
888//清除当前公共事件取消状态的回调
889function clearAbortCallback(err) {
890    if (err.code) {
891        console.error("clearAbortCommonEvent failed " + JSON.stringify(err));
892    } else {
893        console.info("clearAbortCommonEvent");
894    }
895}
896subscriber.clearAbortCommonEvent(clearAbortCallback);
897```
898
899### clearAbortCommonEvent
900
901clearAbortCommonEvent(): Promise\<void>
902
903清除当前公共事件的取消状态,仅对有序公共事件有效(Promise形式)。
904
905**系统能力**:SystemCapability.Notification.CommonEvent
906
907**返回值:**
908
909| 类型             | 说明                 |
910| ---------------- | -------------------- |
911| Promise\<void>   | 返回一个Promise的结果。 |
912
913**示例:**
914
915```js
916let subscriber;	//创建成功的订阅者对象
917
918subscriber.clearAbortCommonEvent().then(() => {
919    console.info("clearAbortCommonEvent");
920}).catch((err) => {
921    console.error("clearAbortCommonEvent failed " + JSON.stringify(err));
922});
923```
924
925### getAbortCommonEvent
926
927getAbortCommonEvent(callback: AsyncCallback\<boolean>): void
928
929获取当前有序公共事件是否取消的状态(callback形式)。
930
931**系统能力**:SystemCapability.Notification.CommonEvent
932
933**参数:**
934
935| 参数名   | 类型                    | 必填 | 说明                               |
936| -------- | ----------------------- | ---- | ---------------------------------- |
937| callback | AsyncCallback\<boolean> | 是   | 表示当前有序公共事件是否取消的状态。 |
938
939**示例:**
940
941```js
942let subscriber;	//创建成功的订阅者对象
943
944//获取当前有序公共事件是否取消的回调
945function getAbortCallback(err, AbortCommonEvent) {
946    if (err.code) {
947        console.error("getAbortCommonEvent failed " + JSON.stringify(err));
948    } else {
949        console.info("AbortCommonEvent " + AbortCommonEvent)
950    }
951}
952subscriber.getAbortCommonEvent(getAbortCallback);
953```
954
955### getAbortCommonEvent
956
957getAbortCommonEvent(): Promise\<boolean>
958
959获取当前有序公共事件是否取消的状态(Promise形式)。
960
961**系统能力**:SystemCapability.Notification.CommonEvent
962
963**返回值:**
964
965| 类型              | 说明                               |
966| ----------------- | ---------------------------------- |
967| Promise\<boolean> | 表示当前有序公共事件是否取消的状态。 |
968
969**示例:**
970
971```js
972let subscriber;	//创建成功的订阅者对象
973
974subscriber.getAbortCommonEvent().then((AbortCommonEvent) => {
975    console.info("AbortCommonEvent " + JSON.stringify(AbortCommonEvent));
976}).catch((err) => {
977    console.error("getAbortCommonEvent failed " + JSON.stringify(err));
978});
979```
980
981### getSubscribeInfo
982
983getSubscribeInfo(callback: AsyncCallback\<CommonEventSubscribeInfo>): void
984
985获取订阅者的订阅信息(callback形式)。
986
987**系统能力**:SystemCapability.Notification.CommonEvent
988
989**参数:**
990
991| 参数名   | 类型                                                         | 必填 | 说明                   |
992| -------- | ------------------------------------------------------------ | ---- | ---------------------- |
993| callback | AsyncCallback\<[CommonEventSubscribeInfo](#commoneventsubscribeinfo)> | 是   | 表示订阅者的订阅信息。 |
994
995**示例:**
996
997```js
998let subscriber;	//创建成功的订阅者对象
999
1000//获取订阅者信息回调
1001function getSubscribeInfoCallback(err, SubscribeInfo) {
1002    if (err.code) {
1003        console.error("getSubscribeInfo failed " + JSON.stringify(err));
1004    } else {
1005        console.info("SubscribeInfo " + JSON.stringify(SubscribeInfo));
1006    }
1007}
1008subscriber.getSubscribeInfo(getSubscribeInfoCallback);
1009```
1010
1011### getSubscribeInfo
1012
1013getSubscribeInfo(): Promise\<CommonEventSubscribeInfo>
1014
1015获取订阅者的订阅信息(Promise形式)。
1016
1017**系统能力**:SystemCapability.Notification.CommonEvent
1018
1019**返回值:**
1020
1021| 类型                                                         | 说明                   |
1022| ------------------------------------------------------------ | ---------------------- |
1023| Promise\<[CommonEventSubscribeInfo](#commoneventsubscribeinfo)> | 表示订阅者的订阅信息。 |
1024
1025**示例:**
1026
1027```js
1028let subscriber;	//创建成功的订阅者对象
1029
1030subscriber.getSubscribeInfo().then((SubscribeInfo) => {
1031    console.info("SubscribeInfo " + JSON.stringify(SubscribeInfo));
1032}).catch((err) => {
1033    console.error("getSubscribeInfo failed " + JSON.stringify(err));
1034});
1035```
1036
1037### finishCommonEvent<sup>9+</sup>
1038
1039finishCommonEvent(callback: AsyncCallback\<void\>): void
1040
1041结束当前有序公共事件(callback形式)。
1042
1043**系统能力**:SystemCapability.Notification.CommonEvent
1044
1045**参数:**
1046
1047| 参数名   | 类型                  | 必填 | 说明                              |
1048| -------- | -------------------- | ---- | -------------------------------- |
1049| callback | AsyncCallback\<void> | 是   | 表示有序公共事件结束后的回调函数。 |
1050
1051**示例:**
1052
1053```js
1054let subscriber; //创建成功的订阅者对象
1055
1056//结束当前有序公共事件的回调
1057function finishCommonEventCallback(err) {
1058  if (err.code) {
1059    console.error("finishCommonEvent failed " + JSON.stringify(err));
1060} else {
1061    console.info("FinishCommonEvent");
1062}
1063}
1064subscriber.finishCommonEvent(finishCommonEventCallback);
1065```
1066
1067### finishCommonEvent<sup>9+</sup>
1068
1069finishCommonEvent(): Promise\<void\>
1070
1071结束当前有序公共事件(Promise形式)。
1072
1073**系统能力**:SystemCapability.Notification.CommonEvent
1074
1075**返回值:**
1076
1077| 类型             | 说明                 |
1078| ---------------- | -------------------- |
1079| Promise\<void>   | 返回一个Promise的结果。 |
1080
1081**示例:**
1082
1083```js
1084let subscriber;	//创建成功的订阅者对象
1085
1086subscriber.finishCommonEvent().then(() => {
1087    console.info("FinishCommonEvent");
1088}).catch((err) => {
1089    console.error("finishCommonEvent failed " + JSON.stringify(err));
1090});
1091```
1092
1093## CommonEventData
1094
1095公共事件数据体。
1096
1097**系统能力:** 以下各项对应的系统能力均为SystemCapability.Notification.CommonEvent
1098
1099| 名称       | 类型                 | 可读 | 可写 | 说明                                                    |
1100| ---------- |-------------------- | ---- | ---- |  ------------------------------------------------------- |
1101| event      | string               | 是  | 否  | 表示当前接收的公共事件名称。                              |
1102| bundleName | string               | 是  | 否  | 表示包名称。                                              |
1103| code       | number               | 是  | 否  | 表示公共事件的结果代码,用于传递int类型的数据。           |
1104| data       | string               | 是  | 否  | 表示公共事件的自定义结果数据,用于传递string类型的数据。 |
1105| parameters | {[key: string]: any} | 是  | 否  | 表示公共事件的附加信息。                                  |
1106
1107
1108## CommonEventPublishData
1109
1110公共事件发送的数据体,包含公共事件内容和属性。
1111
1112**系统能力:** 以下各项对应的系统能力均为SystemCapability.Notification.CommonEvent
1113
1114| 名称                  | 类型                 | 可读 | 可写 | 说明                         |
1115| --------------------- | -------------------- | ---- | ---- | ---------------------------- |
1116| bundleName            | string               | 是  | 否  | 表示包名称。                   |
1117| code                  | number               | 是  | 否  | 表示公共事件的结果代码。       |
1118| data                  | string               | 是  | 否  | 表示公共事件的自定义结果数据。 |
1119| subscriberPermissions | Array\<string>       | 是  | 否  | 表示订阅者的权限。             |
1120| isOrdered             | boolean              | 是  | 否  | 表示是否是有序事件。           |
1121| isSticky              | boolean              | 是  | 否  | 表示是否是粘性事件。仅系统应用或系统服务允许发送粘性事件。 |
1122| parameters            | {[key: string]: any} | 是  | 否  | 表示公共事件的附加信息。       |
1123
1124## CommonEventSubscribeInfo
1125
1126订阅者信息。
1127
1128**系统能力:** 以下各项对应的系统能力均为SystemCapability.Notification.CommonEvent
1129
1130| 名称                | 类型           | 可读 | 可写 | 说明                                                         |
1131| ------------------- | -------------- | ---- | ---- | ------------------------------------------------------------ |
1132| events              | Array\<string> | 是  | 否  | 表示要发送的公共事件。                                         |
1133| publisherPermission | string         | 是  | 否  | 表示发布者的权限。                                             |
1134| publisherDeviceId   | string         | 是  | 否  | 表示设备ID,该值必须是同一ohos网络上的现有设备ID。             |
1135| userId              | number         | 是  | 否  | 表示用户ID。此参数是可选的,默认值当前用户的ID。如果指定了此参数,则该值必须是系统中现有的用户ID。 |
1136| priority            | number         | 是  | 否  | 表示订阅者的优先级。值的范围是-100到1000。                     |
1137