中国优质的IT技术网站
专业IT技术创作平台
IT职业在线教育平台
如何实现公共事件的动态订阅?
微信扫码分享
//1.导入模块 import Base from '@ohos.base'; import commonEventManager from '@ohos.commonEventManager'; import promptAction from '@ohos.promptAction'; //2.创建订阅者信息 // 用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作 let subscriber: commonEventManager.CommonEventSubscriber | null = null; // 订阅者信息,其中的event字段需要替换为实际的事件名称。 let subscribeInfo: commonEventManager.CommonEventSubscribeInfo = { events: ['event'], // 订阅灭屏公共事件 }; //3.创建订阅者 // 创建订阅者回调 commonEventManager.createSubscriber(subscribeInfo, (err: Base.BusinessError, data: commonEventManager.CommonEventSubscriber) => { if (err) { console.error(`Failed to create subscriber. Code is ${err.code}, message is ${err.message}`); return; } console.info('Succeeded in creating subscriber.'); subscriber = data; // 订阅公共事件回调 }) // 4.创建订阅回调函数 // 订阅公共事件回调 if (this.subscriber !== null) { commonEventManager.subscribe(subscriber, (err: Base.BusinessError, data: commonEventManager.CommonEventData) => { if (err) { console.error(`Failed to subscribe common event. Code is ${err.code}, message is ${err.message}`); return; } }) } else { console.error(`Need create subscriber`); }