可以使用系统公共事件usual.event.SCREEN\_OFF监听息屏,https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/commoneventmanager-definitions-V5\#common\_event\_screen\_off,参考实现:let subscriber:commonEventManager.CommonEventSubscriber; //用于保存创建成功的订阅者对象,后续使用其完成订阅及退订的动作 //订阅者信息 let subscribeInfo:commonEventManager.CommonEventSubscribeInfo = { events: ["usual.event.SCREEN_OFF"] }; //订阅公共事件回调 function SubscribeCB(err:Base.BusinessError, data:commonEventManager.CommonEventData) { if (err) { console.error(`subscribe failed, code is ${err.code}, message is ${err.message}`); } else { console.info("subscribe usual.event.SCREEN_OFF"); } } //创建订阅者回调 function createCB(err:Base.BusinessError, commonEventSubscriber:commonEventManager.CommonEventSubscriber) { if(!err) { console.info("createSubscriber"); subscriber = commonEventSubscriber; //订阅公共事件 try { commonEventManager.subscribe(subscriber, SubscribeCB); console.info(`subscribe success`); } catch (error) { let err:Base.BusinessError = error as Base.BusinessError; console.error(`subscribe failed, code is ${err.code}, message is ${err.message}`); } } else { console.error(`createSubscriber failed, code is ${err.code}, message is ${err.message}`); } } //创建订阅者 try { commonEventManager.createSubscriber(subscribeInfo, createCB); } catch (error) { let err:Base.BusinessError = error as Base.BusinessError; console.error(`createSubscriber failed, code is ${err.code}, message is ${err.message}`); }
可以使用系统公共事件usual.event.SCREEN\_OFF监听息屏,https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/commoneventmanager-definitions-V5\#common\_event\_screen\_off,参考实现: