1# CommonEventSubscriber 2 3描述公共事件的订阅者。 4 5> **说明:** 6> 7> 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8 9## 使用说明 10 11在使用CommonEventSubscriber的功能前,需要通过CommonEvent.createSubscriber获取subscriber对象。 12 13```ts 14import CommonEvent from '@ohos.commonEvent'; 15import CommonEventManager from '@ohos.commonEventManager'; 16import Base from '@ohos.base'; 17let subscriber:CommonEventManager.CommonEventSubscriber; // 用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作 18 19// 订阅者信息 20let subscribeInfo:CommonEventManager.CommonEventSubscribeInfo = { 21 events: ["event"] 22}; 23 24// 创建订阅者回调 25function createCB(err:Base.BusinessError, commonEventSubscriber:CommonEventManager.CommonEventSubscriber) { 26 if (err.code !== undefined && err.code != null) { 27 console.error(`createSubscriber failed, code is ${err.code}`); 28 } else { 29 console.info("createSubscriber"); 30 subscriber = commonEventSubscriber; 31 } 32} 33 34// 创建订阅者 35CommonEvent.createSubscriber(subscribeInfo, createCB); 36``` 37 38## getCode 39 40getCode(callback: AsyncCallback\<number>): void 41 42以回调形式获取公共事件代码。 43 44**系统能力**:`SystemCapability.Notification.CommonEvent` 45 46**参数:** 47 48| 参数名 | 类型 | 必填 | 说明 | 49| -------- | ---------------------- | ---- | ------------------ | 50| callback | AsyncCallback\<number\> | 是 | 公共事件代码。 | 51 52**示例:** 53 54```ts 55//获取有序公共事件代码回调 56function getCodeCB(err:Base.BusinessError, code:number) { 57 if (err.code !== undefined && err.code != null) { 58 console.error(`getCode failed, code is ${err.code}, message is ${err.message}`); 59 } else { 60 console.info("getCode " + JSON.stringify(code)); 61 } 62} 63subscriber.getCode(getCodeCB); 64``` 65 66## getCode 67 68getCode(): Promise\<number> 69 70以Promise形式获取公共事件代码。 71 72**系统能力**:`SystemCapability.Notification.CommonEvent` 73 74**返回值:** 75 76| 类型 | 说明 | 77| ---------------- | -------------------- | 78| Promise\<number> | 公共事件代码。 | 79 80**示例:** 81 82```ts 83subscriber.getCode().then((code:number) => { 84 console.info("getCode " + JSON.stringify(code)); 85}).catch((err:Base.BusinessError) => { 86 console.error(`getCode failed, code is ${err.code}, message is ${err.message}`); 87}); 88``` 89 90## getCodeSync<sup>10+</sup> 91 92getCodeSync(): number 93 94getCode的同步接口。 95 96**系统能力**:`SystemCapability.Notification.CommonEvent` 97 98**返回值:** 99 100| 类型 | 说明 | 101| ---------------- | -------------------- | 102| number | 公共事件代码。 | 103 104**示例:** 105 106```ts 107let code = subscriber.getCodeSync(); 108console.info("getCodeSync " + JSON.stringify(code)); 109``` 110 111## setCode 112 113setCode(code: number, callback: AsyncCallback\<void>): void 114 115以回调形式设置公共事件的代码。 116 117**系统能力**:`SystemCapability.Notification.CommonEvent` 118 119**参数:** 120 121| 参数名 | 类型 | 必填 | 说明 | 122| -------- | -------------------- | ---- | ---------------------- | 123| code | number | 是 | 公共事件的代码。 | 124| callback | AsyncCallback\<void> | 是 | 表示被指定的回调方法。 | 125 126**示例:** 127 128```ts 129//设置有序公共事件的代码回调 130function setCodeCB(err:Base.BusinessError) { 131 if (err.code !== undefined && err.code != null) { 132 console.error(`setCode failed, code is ${err.code}, message is ${err.message}`); 133 } else { 134 console.info("setCode"); 135 } 136} 137subscriber.setCode(1, setCodeCB); 138``` 139 140## setCode 141 142setCode(code: number): Promise\<void> 143 144以Promise形式设置公共事件的代码。 145 146**系统能力**:`SystemCapability.Notification.CommonEvent` 147 148**参数:** 149 150| 参数名 | 类型 | 必填 | 说明 | 151| ------ | ------ | ---- | ------------------ | 152| code | number | 是 | 公共事件的代码。 | 153 154**返回值:** 155 156| 类型 | 说明 | 157| ---------------- | -------------------- | 158| Promise\<void> | 返回一个Promise的结果。 | 159 160**示例:** 161 162```ts 163subscriber.setCode(1).then(() => { 164 console.info("setCode"); 165}).catch((err:Base.BusinessError) => { 166 console.error(`setCode failed, code is ${err.code}, message is ${err.message}`); 167}); 168``` 169 170## setCodeSync<sup>10+</sup> 171 172setCodeSync(code: number): void 173 174setCode的同步接口。 175 176**系统能力**:`SystemCapability.Notification.CommonEvent` 177 178**参数:** 179 180| 参数名 | 类型 | 必填 | 说明 | 181| ------ | ------ | ---- | ------------------ | 182| code | number | 是 | 公共事件的代码。 | 183 184 185**示例:** 186 187```ts 188 189try { 190 subscriber.setCodeSync(1); 191} catch (error) { 192 let err:Base.BusinessError = error as Base.BusinessError; 193 console.error(`setCodeSync failed, code is ${err.code}, message is ${err.message}`); 194} 195``` 196 197## getData 198 199getData(callback: AsyncCallback\<string>): void 200 201以回调形式获取公共事件的数据。 202 203**系统能力**:`SystemCapability.Notification.CommonEvent` 204 205**参数:** 206 207| 参数名 | 类型 | 必填 | 说明 | 208| -------- | ---------------------- | ---- | -------------------- | 209| callback | AsyncCallback\<string> | 是 | 公共事件的数据。 | 210 211**示例:** 212 213```ts 214//获取有序公共事件代码数据回调 215function getDataCB(err:Base.BusinessError, data:string) { 216 if (err.code !== undefined && err.code != null) { 217 console.error(`getData failed, code is ${err.code}, message is ${err.message}`); 218 } else { 219 console.info("getData " + JSON.stringify(data)); 220 } 221} 222subscriber.getData(getDataCB); 223``` 224 225## getData 226 227getData(): Promise\<string> 228 229以Promise形式获取公共事件的数据。 230 231**系统能力**:`SystemCapability.Notification.CommonEvent` 232 233**返回值:** 234 235| 类型 | 说明 | 236| ---------------- | ------------------ | 237| Promise\<string> | 公共事件的数据。 | 238 239**示例:** 240 241```ts 242subscriber.getData().then((data:string) => { 243 console.info("getData " + JSON.stringify(data)); 244}).catch((err:Base.BusinessError) => { 245 console.error(`getData failed, code is ${err.code}, message is ${err.message}`); 246}); 247``` 248 249## getDataSync<sup>10+</sup> 250 251getDataSync(): string 252 253getData的同步接口。 254 255**系统能力**:`SystemCapability.Notification.CommonEvent` 256 257**返回值:** 258 259| 类型 | 说明 | 260| ---------------- | ------------------ | 261| string | 公共事件的数据。 | 262 263**示例:** 264 265```ts 266let data = subscriber.getDataSync(); 267console.info("getDataSync " + JSON.stringify(data)); 268``` 269 270## setData 271 272setData(data: string, callback: AsyncCallback\<void>): void 273 274以回调形式设置公共事件的数据。 275 276**系统能力**:`SystemCapability.Notification.CommonEvent` 277 278**参数:** 279 280| 参数名 | 类型 | 必填 | 说明 | 281| -------- | -------------------- | ---- | -------------------- | 282| data | string | 是 | 公共事件的数据。 | 283| callback | AsyncCallback\<void> | 是 | 表示被指定的回调方法。 | 284 285**示例:** 286 287```ts 288//设置有序公共事件的结果数据回调 289function setDataCB(err:Base.BusinessError) { 290 if (err.code !== undefined && err.code != null) { 291 console.error(`setCode failed, code is ${err.code}, message is ${err.message}`); 292 } else { 293 console.info("setData"); 294 } 295} 296subscriber.setData("publish_data_changed", setDataCB); 297``` 298 299## setData 300 301setData(data: string): Promise\<void> 302 303以Promise形式设置公共事件的果数据。 304 305**系统能力**:`SystemCapability.Notification.CommonEvent` 306 307**参数:** 308 309| 参数名 | 类型 | 必填 | 说明 | 310| ------ | ------ | ---- | -------------------- | 311| data | string | 是 | 公共事件的数据。 | 312 313**返回值:** 314 315| 类型 | 说明 | 316| ---------------- | -------------------- | 317| Promise\<void> | 返回一个Promise的结果。 | 318 319**示例:** 320 321```ts 322subscriber.setData("publish_data_changed").then(() => { 323 console.info("setData"); 324}).catch((err:Base.BusinessError) => { 325 console.error(`setCode failed, code is ${err.code}, message is ${err.message}`); 326}); 327``` 328 329## setDataSync<sup>10+</sup> 330 331setDataSync(data: string): void 332 333setData的同步接口。 334 335**系统能力**:`SystemCapability.Notification.CommonEvent` 336 337**参数:** 338 339| 参数名 | 类型 | 必填 | 说明 | 340| ------ | ------ | ---- | -------------------- | 341| data | string | 是 | 公共事件的数据。 | 342 343**示例:** 344 345```ts 346try { 347 subscriber.setDataSync("publish_data_changed"); 348} catch (error) { 349 let err:Base.BusinessError = error as Base.BusinessError; 350 console.error(`setDataSync failed, code is ${err.code}, message is ${err.message}`); 351} 352``` 353 354## setCodeAndData 355 356setCodeAndData(code: number, data: string, callback:AsyncCallback\<void>): void 357 358以回调形式设置公共事件代码和数据。 359 360**系统能力**:`SystemCapability.Notification.CommonEvent` 361 362**参数:** 363 364| 参数名 | 类型 | 必填 | 说明 | 365| -------- | -------------------- | ---- | ---------------------- | 366| code | number | 是 | 公共事件的代码。 | 367| data | string | 是 | 公共事件的数据。 | 368| callback | AsyncCallback\<void> | 是 | 表示被指定的回调方法。 | 369 370**示例:** 371 372```ts 373//设置有序公共事件的代码和数据回调 374function setCodeDataCB(err:Base.BusinessError) { 375 if (err.code !== undefined && err.code != null) { 376 console.error(`setCodeAndData failed, code is ${err.code}, message is ${err.message}`); 377 } else { 378 console.info("setCodeDataCallback"); 379 } 380} 381subscriber.setCodeAndData(1, "publish_data_changed", setCodeDataCB); 382``` 383 384## setCodeAndData 385 386setCodeAndData(code: number, data: string): Promise\<void> 387 388以Promise形式设置公共事件的代码和数据。 389 390**系统能力**:`SystemCapability.Notification.CommonEvent` 391 392**参数:** 393 394| 参数名 | 类型 | 必填 | 说明 | 395| ------ | ------ | ---- | -------------------- | 396| code | number | 是 | 公共事件的代码。 | 397| data | string | 是 | 公共事件的数据。 | 398 399**返回值:** 400 401| 类型 | 说明 | 402| ---------------- | -------------------- | 403| Promise\<void> | 返回一个Promise。 | 404 405**示例:** 406 407```ts 408subscriber.setCodeAndData(1, "publish_data_changed").then(() => { 409 console.info("setCodeAndData"); 410}).catch((err:Base.BusinessError) => { 411 console.error(`setCodeAndData failed, code is ${err.code}, message is ${err.message}`); 412}); 413``` 414 415## setCodeAndDataSync<sup>10+</sup> 416 417setCodeAndDataSync(code: number, data: string): void 418 419setCodeAndData的同步接口。 420 421**系统能力**:`SystemCapability.Notification.CommonEvent` 422 423**参数:** 424 425| 参数名 | 类型 | 必填 | 说明 | 426| ------ | ------ | ---- | -------------------- | 427| code | number | 是 | 公共事件的代码。 | 428| data | string | 是 | 公共事件的数据。 | 429 430**示例:** 431 432```ts 433try { 434 subscriber.setCodeAndDataSync(1, "publish_data_changed"); 435} catch (error) { 436 let err:Base.BusinessError = error as Base.BusinessError; 437 console.error(`setCodeAndData failed, code is ${err.code}, message is ${err.message}`); 438} 439 440``` 441## isOrderedCommonEvent 442 443isOrderedCommonEvent(callback: AsyncCallback\<boolean>): void 444 445以回调形式查询当前公共事件是否为有序公共事件。 446 447返回true代表是有序公共事件,false代表不是有序公共事件。 448 449**系统能力**:`SystemCapability.Notification.CommonEvent` 450 451**参数:** 452 453| 参数名 | 类型 | 必填 | 说明 | 454| -------- | ----------------------- | ---- | ---------------------------------- | 455| callback | AsyncCallback\<boolean> | 是 | 当前公共事件是否为有序公共事件。 | 456 457**示例:** 458 459```ts 460//获取当前公共事件是否为有序事件的回调 461function isOrderedCB(err:Base.BusinessError, isOrdered:boolean) { 462 if (err.code !== undefined && err.code != null) { 463 console.error(`isOrderedCommonEvent failed, code is ${err.code}, message is ${err.message}`); 464 } else { 465 console.info("isOrdered " + JSON.stringify(isOrdered)); 466 } 467} 468subscriber.isOrderedCommonEvent(isOrderedCB); 469``` 470 471## isOrderedCommonEvent 472 473isOrderedCommonEvent(): Promise\<boolean> 474 475以Promise形式查询当前公共事件是否为有序公共事件。 476 477返回true代表是有序公共事件,false代表不是有序公共事件。 478 479**系统能力**:`SystemCapability.Notification.CommonEvent` 480 481**返回值:** 482 483| 类型 | 说明 | 484| ----------------- | -------------------------------- | 485| Promise\<boolean> | 当前公共事件是否为有序公共事件。 | 486 487**示例:** 488 489```ts 490subscriber.isOrderedCommonEvent().then((isOrdered:boolean) => { 491 console.info("isOrdered " + JSON.stringify(isOrdered)); 492}).catch((err:Base.BusinessError) => { 493 console.error(`isOrdered failed, code is ${err.code}, message is ${err.message}`); 494}); 495``` 496 497## isOrderedCommonEventSync<sup>10+</sup> 498 499isOrderedCommonEventSync(): boolean 500 501isOrderedCommonEvent的同步接口。 502 503返回true代表是有序公共事件,false代表不是有序公共事件。 504 505**系统能力**:`SystemCapability.Notification.CommonEvent` 506 507**返回值:** 508 509| 类型 | 说明 | 510| ----------------- | -------------------------------- | 511| boolean | 当前公共事件是否为有序公共事件。 | 512 513**示例:** 514 515```ts 516let isOrdered = subscriber.isOrderedCommonEventSync(); 517console.info("isOrdered " + JSON.stringify(isOrdered)); 518``` 519 520## isStickyCommonEvent 521 522isStickyCommonEvent(callback: AsyncCallback\<boolean>): void 523 524以回调形式检查当前公共事件是否为一个粘性事件。 525 526返回true代表是粘性公共事件,false代表不是粘性公共事件。 527 528**系统能力**:`SystemCapability.Notification.CommonEvent` 529 530**参数:** 531 532| 参数名 | 类型 | 必填 | 说明 | 533| -------- | ----------------------- | ---- | ---------------------------------- | 534| callback | AsyncCallback\<boolean> | 是 | 当前公共事件是否为粘性公共事件。 | 535 536**示例:** 537 538```ts 539//获取当前公共事件是否为粘性事件的回调 540function isStickyCB(err:Base.BusinessError, isSticky:boolean) { 541 if (err.code !== undefined && err.code != null) { 542 console.error(`isStickyCommonEvent failed, code is ${err.code}, message is ${err.message}`); 543 } else { 544 console.info("isSticky " + JSON.stringify(isSticky)); 545 } 546} 547subscriber.isStickyCommonEvent(isStickyCB); 548``` 549 550## isStickyCommonEvent 551 552isStickyCommonEvent(): Promise\<boolean> 553 554以Promise形式检查当前公共事件是否为一个粘性事件。 555 556返回true代表是粘性公共事件,false代表不是粘性公共事件。 557 558**系统能力**:`SystemCapability.Notification.CommonEvent` 559 560**返回值:** 561 562| 类型 | 说明 | 563| ----------------- | -------------------------------- | 564| Promise\<boolean> | 当前公共事件是否为粘性公共事件。 | 565 566**示例:** 567 568```ts 569subscriber.isStickyCommonEvent().then((isSticky:boolean) => { 570 console.info("isSticky " + JSON.stringify(isSticky)); 571}).catch((err:Base.BusinessError) => { 572 console.error(`isSticky failed, code is ${err.code}, message is ${err.message}`); 573}); 574``` 575 576## isStickyCommonEventSync<sup>10+</sup> 577 578isStickyCommonEventSync(): boolean 579 580isStickyCommonEvent的同步接口。 581 582返回true代表是粘性公共事件,false代表不是粘性公共事件。 583 584**系统能力**:`SystemCapability.Notification.CommonEvent` 585 586**返回值:** 587 588| 类型 | 说明 | 589| ----------------- | -------------------------------- | 590| boolean | 当前公共事件是否为粘性公共事件。 | 591 592**示例:** 593 594```ts 595let isSticky = subscriber.isStickyCommonEventSync(); 596console.info("isSticky " + JSON.stringify(isSticky)); 597``` 598 599## abortCommonEvent 600 601abortCommonEvent(callback: AsyncCallback\<void>): void 602 603以回调形式取消当前的有序公共事件,取消后,有序公共事件不再向下一个订阅者传递。 604 605**系统能力**:`SystemCapability.Notification.CommonEvent` 606 607**参数:** 608 609| 参数名 | 类型 | 必填 | 说明 | 610| -------- | -------------------- | ---- | -------------------- | 611| callback | AsyncCallback\<void> | 是 | 取消当前的有序公共事件。 | 612 613**示例:** 614 615```ts 616//取消当前有序公共事件的回调 617function abortCB(err:Base.BusinessError) { 618 if (err.code !== undefined && err.code != null) { 619 console.error(`abortCommonEvent failed, code is ${err.code}, message is ${err.message}`); 620 } else { 621 console.info("abortCommonEvent"); 622 } 623} 624subscriber.abortCommonEvent(abortCB); 625``` 626 627## abortCommonEvent 628 629abortCommonEvent(): Promise\<void> 630 631以Promise形式取消当前的有序公共事件,取消后,公共事件不再向下一个订阅者传递。 632 633**系统能力**:`SystemCapability.Notification.CommonEvent` 634 635**返回值:** 636 637| 类型 | 说明 | 638| ---------------- | -------------------- | 639| Promise\<void> | 返回一个Promise的结果。 | 640 641**示例:** 642 643```ts 644subscriber.abortCommonEvent().then(() => { 645 console.info("abortCommonEvent"); 646}).catch((err:Base.BusinessError) => { 647 console.error(`abortCommonEvent failed, code is ${err.code}, message is ${err.message}`); 648}); 649``` 650 651## abortCommonEventSync<sup>10+</sup> 652 653abortCommonEventSync(): void 654 655abortCommonEvent的同步接口。 656 657**系统能力**:`SystemCapability.Notification.CommonEvent` 658 659**示例:** 660 661```ts 662subscriber.abortCommonEventSync(); 663``` 664 665## clearAbortCommonEvent 666 667clearAbortCommonEvent(callback: AsyncCallback\<void>): void 668 669以回调形式清除当前有序公共事件。 670 671**系统能力**:`SystemCapability.Notification.CommonEvent` 672 673**参数:** 674 675| 参数名 | 类型 | 必填 | 说明 | 676| -------- | -------------------- | ---- | -------------------- | 677| callback | AsyncCallback\<void> | 是 | 表示被指定的回调方法。 | 678 679**示例:** 680 681```ts 682//清除当前公共事件取消状态的回调 683function clearAbortCB(err:Base.BusinessError) { 684 if (err.code !== undefined && err.code != null) { 685 console.error(`clearAbortCommonEvent failed, code is ${err.code}, message is ${err.message}`); 686 } else { 687 console.info("clearAbortCommonEvent"); 688 } 689} 690subscriber.clearAbortCommonEvent(clearAbortCB); 691``` 692 693## clearAbortCommonEvent 694 695clearAbortCommonEvent(): Promise\<void> 696 697以Promise形式清除当前有序公共事件。 698 699**系统能力**:`SystemCapability.Notification.CommonEvent` 700 701**返回值:** 702 703| 类型 | 说明 | 704| ---------------- | -------------------- | 705| Promise\<void> | 返回一个Promise的结果。 | 706 707**示例:** 708 709```ts 710subscriber.clearAbortCommonEvent().then(() => { 711 console.info("clearAbortCommonEvent"); 712}).catch((err:Base.BusinessError) => { 713 console.error(`clearAbortCommonEvent failed, code is ${err.code}, message is ${err.message}`); 714}); 715``` 716 717## clearAbortCommonEventSync<sup>10+</sup> 718 719clearAbortCommonEventSync(): void 720 721clearAbortCommonEvent的同步接口。 722 723**系统能力**:`SystemCapability.Notification.CommonEvent` 724 725**示例:** 726 727```ts 728subscriber.clearAbortCommonEventSync(); 729``` 730 731## getAbortCommonEvent 732 733getAbortCommonEvent(callback: AsyncCallback\<boolean>): void 734 735以回调形式获取当前有序公共事件是否取消的状态。 736 737**系统能力**:`SystemCapability.Notification.CommonEvent` 738 739**参数:** 740 741| 参数名 | 类型 | 必填 | 说明 | 742| -------- | ----------------------- | ---- | ---------------------------------- | 743| callback | AsyncCallback\<boolean> | 是 | 表示当前有序公共事件是否取消的状态。 | 744 745**示例:** 746 747```ts 748//获取当前有序公共事件是否取消的回调 749function getAbortCB(err:Base.BusinessError, abortEvent:boolean) { 750 if (err.code !== undefined && err.code != null) { 751 console.error(`getAbortCommonEvent failed, code is ${err.code}, message is ${err.message}`); 752 } else { 753 console.info("abortCommonEvent " + abortEvent) 754 } 755} 756subscriber.getAbortCommonEvent(getAbortCB); 757``` 758 759## getAbortCommonEvent 760 761getAbortCommonEvent(): Promise\<boolean> 762 763以Promise形式获取当前有序公共事件是否取消的状态。 764 765**系统能力**:`SystemCapability.Notification.CommonEvent` 766 767**返回值:** 768 769| 类型 | 说明 | 770| ----------------- | ---------------------------------- | 771| Promise\<boolean> | 表示当前有序公共事件是否取消的状态。 | 772 773**示例:** 774 775```ts 776subscriber.getAbortCommonEvent().then((abortEvent:boolean) => { 777 console.info("abortCommonEvent " + JSON.stringify(abortEvent)); 778}).catch((err:Base.BusinessError) => { 779 console.error(`getAbortCommonEvent failed, code is ${err.code}, message is ${err.message}`); 780}); 781``` 782 783## getAbortCommonEventSync<sup>10+</sup> 784 785getAbortCommonEventSync(): boolean 786 787getAbortCommonEvent的同步接口。 788 789**系统能力**:`SystemCapability.Notification.CommonEvent` 790 791**返回值:** 792 793| 类型 | 说明 | 794| ----------------- | ---------------------------------- | 795| boolean | 表示当前有序公共事件是否取消的状态。 | 796 797**示例:** 798 799```ts 800let abortEvent = subscriber.getAbortCommonEventSync(); 801console.info("getAbortCommonEventSync " + JSON.stringify(abortEvent)); 802``` 803 804## getSubscribeInfo 805 806getSubscribeInfo(callback: AsyncCallback\<CommonEventSubscribeInfo>): void 807 808以回调形式获取订阅者的订阅信息。 809 810**系统能力**:`SystemCapability.Notification.CommonEvent` 811 812**参数:** 813 814| 参数名 | 类型 | 必填 | 说明 | 815| -------- | ------------------------------------------------------------ | ---- | ---------------------- | 816| callback | AsyncCallback\<[CommonEventSubscribeInfo](./js-apis-inner-commonEvent-commonEventSubscribeInfo.md)> | 是 | 表示订阅者的订阅信息。 | 817 818**示例:** 819 820```ts 821//获取订阅者信息回调 822function getCB(err:Base.BusinessError, subscribeInfo:CommonEventManager.CommonEventSubscribeInfo) { 823 if (err.code !== undefined && err.code != null) { 824 console.error(`getSubscribeInfo failed, code is ${err.code}, message is ${err.message}`); 825 } else { 826 console.info("subscribeInfo " + JSON.stringify(subscribeInfo)); 827 } 828} 829subscriber.getSubscribeInfo(getCB); 830``` 831 832## getSubscribeInfo 833 834getSubscribeInfo(): Promise\<CommonEventSubscribeInfo> 835 836以Promise形式获取订阅者的订阅信息。 837 838**系统能力**:`SystemCapability.Notification.CommonEvent` 839 840**返回值:** 841 842| 类型 | 说明 | 843| ------------------------------------------------------------ | ---------------------- | 844| Promise\<[CommonEventSubscribeInfo](./js-apis-inner-commonEvent-commonEventSubscribeInfo.md)> | 表示订阅者的订阅信息。 | 845 846**示例:** 847 848```ts 849subscriber.getSubscribeInfo().then((subscribeInfo:CommonEventManager.CommonEventSubscribeInfo) => { 850 console.info("subscribeInfo " + JSON.stringify(subscribeInfo)); 851}).catch((err:Base.BusinessError) => { 852 console.error(`getSubscribeInfo failed, code is ${err.code}, message is ${err.message}`); 853}); 854``` 855 856## getSubscribeInfoSync<sup>10+</sup> 857 858getSubscribeInfoSync(): CommonEventSubscribeInfo 859 860getSubscribeInfo的同步接口。 861 862**系统能力**:`SystemCapability.Notification.CommonEvent` 863 864**返回值:** 865 866| 类型 | 说明 | 867| ------------------------------------------------------------ | ---------------------- | 868| [CommonEventSubscribeInfo](./js-apis-inner-commonEvent-commonEventSubscribeInfo.md) | 表示订阅者的订阅信息。 | 869 870**示例:** 871 872```ts 873let subscribeInfo = subscriber.getSubscribeInfoSync(); 874console.info("subscribeInfo " + JSON.stringify(subscribeInfo)); 875``` 876 877## finishCommonEvent<sup>9+</sup> 878 879finishCommonEvent(callback: AsyncCallback\<void>): void 880 881以回调形式结束当前有序公共事件。 882 883**系统能力**:`SystemCapability.Notification.CommonEvent` 884 885**参数:** 886 887| 参数名 | 类型 | 必填 | 说明 | 888| -------- | -------------------- | ---- | -------------------------------- | 889| callback | AsyncCallback\<void> | 是 | 表示有序公共事件结束后的回调函数。 | 890 891**示例:** 892 893```ts 894//结束当前有序公共事件的回调 895function finishCB(err:Base.BusinessError) { 896 if (err.code !== undefined && err.code != null) { 897 console.error(`finishCommonEvent failed, code is ${err.code}, message is ${err.message}`); 898 } else { 899 console.info("FinishCommonEvent"); 900 } 901} 902 903subscriber.finishCommonEvent(finishCB); 904``` 905 906## finishCommonEvent<sup>9+</sup> 907 908finishCommonEvent(): Promise\<void> 909 910以Promise形式结束当前有序公共事件。 911 912**系统能力**:`SystemCapability.Notification.CommonEvent` 913 914**返回值:** 915 916| 类型 | 说明 | 917| ---------------- | -------------------- | 918| Promise\<void> | 返回一个Promise的结果。 | 919 920**示例:** 921 922```ts 923subscriber.finishCommonEvent().then(() => { 924 console.info("FinishCommonEvent"); 925}).catch((err:Base.BusinessError) => { 926 console.error(`finishCommonEvent failed, code is ${err.code}, message is ${err.message}`); 927}); 928```