鸿蒙开发系统基础能力:【@ohos.screenLock (锁屏管理)】

锁屏管理

锁屏管理服务是OpenHarmony中系统服务,为锁屏应用提供注册亮屏、灭屏、开启屏幕、结束休眠、退出动画、请求解锁结果监听,并提供回调结果给锁屏应用。锁屏管理服务向三方应用提供请求解锁、查询锁屏状态、查询是否设置锁屏密码的能力。

说明: 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

复制代码
import screenlock from '@ohos.screenLock';

screenlock.isScreenLocked

isScreenLocked(callback: AsyncCallback): void

判断屏幕是否锁屏,使用callback作为异步方法。

系统能力: SystemCapability.MiscServices.ScreenLock

参数

参数名 类型 必填 说明
callback AsyncCallback 回调函数,返回true表示屏幕已锁屏,返回false表示屏幕未锁屏。

示例

复制代码
screenlock.isScreenLocked((err, data)=>{      
   if (err) {
        console.error('isScreenLocked callback error -> ${JSON.stringify(err)}');
        return;    
   }
   console.info('isScreenLocked callback success data -> ${JSON.stringify(data)}');
});

screenlock.isScreenLocked

isScreenLocked(): Promise

判断屏幕是否锁屏,使用Promise作为异步方法。

系统能力: SystemCapability.MiscServices.ScreenLock

返回值

类型 说明
Promise 以Promise形式返回结果。

示例

复制代码
screenlock.isScreenLocked().then((data) => {
    console.log('isScreenLocked success: data -> ${JSON.stringify(data)}');
}).catch((err) => {
    console.error('isScreenLocked fail, promise: err -> ${JSON.stringify(err)}');
});

screenlock.isSecureMode

isSecureMode(callback: AsyncCallback): void

判断设备是否处于安全模式下,使用callback作为异步方法。

系统能力: SystemCapability.MiscServices.ScreenLock

参数

参数名 类型 必填 说明
callback AsyncCallback 回调函数。返回true表示屏幕处于安全模式下,返回false表示屏幕当前不在安全模式下。

示例

复制代码
screenlock.isSecureMode((err, data)=>{      
   if (err) {
        console.error('isSecureMode callback error -> ${JSON.stringify(err)}');
        return;    
   }
   console.info('isSecureMode callback success data -> ${JSON.stringify(err)}');
});

screenlock.isSecureMode

isSecureMode(): Promise

判断设备是否处于安全模式下,使用Promise作为异步方法。

系统能力: SystemCapability.MiscServices.ScreenLock

返回值

类型 说明
Promise 以Promise形式返回结果。

示例

复制代码
screenlock.isSecureMode().then((data) => {
    console.log('isSecureMode success: data->${JSON.stringify(data)}');
}).catch((err) => {
    console.error('isSecureMode fail, promise: err->${JSON.stringify(err)}');
});

screenlock.unlockScreen

unlockScreen(callback: AsyncCallback): void

解锁屏幕,使用callback作为异步方法。

系统能力: SystemCapability.MiscServices.ScreenLock

参数

参数名 类型 必填 说明
callback AsyncCallback 回调函数,失败时返回错误信息。

示例

复制代码
screenlock.unlockScreen((err) => {      
   if (err) {
        console.error('unlockScreen callback error -> ${JSON.stringify(err)}');
        return;    
   }
   console.info('unlockScreen callback success');
});

screenlock.unlockScreen

unlockScreen(): Promise

解锁屏幕,使用Promise作为异步方法。

系统能力: SystemCapability.MiscServices.ScreenLock

返回值

类型 说明
Promise 以Promise形式返回结果。

示例

复制代码
screenlock.unlockScreen().then(() => {
    console.log('unlockScreen success');
}).catch((err) => {
    console.error('unlockScreen fail, promise: err->${JSON.stringify(err)}');
});

screenlock.on9+

on(type: 'beginWakeUp' | 'endWakeUp' | 'beginScreenOn' | 'endScreenOn' | 'beginScreenOff' | 'endScreenOff' | 'unlockScreen' | 'beginExitAnimation', callback: Callback): void

注册锁屏状态变化回调。

系统能力: SystemCapability.MiscServices.ScreenLock

系统API:此接口为系统接口,三方应用不支持调用。

参数

参数名 类型 必填 说明
type string 设置事件类型。 - type为"beginWakeUp",表示事件开始时开始唤醒。 - type为"endWakeUp",表示事件结束时结束唤醒。 - type为"beginScreenOn",表示事件开始时开始亮屏。 - type为"endScreenOn",表示事件结束时结束亮屏。 - type为"beginScreenOff",表示事件开始时开始灭屏。 - type为"endScreenOff",表示事件结束时结束灭屏。 - type为"unlockScreen",表示请求解锁。 - type为"beginExitAnimation",表示动画开始退场。
callback Callback 事件回调方法。

示例

复制代码
screenlock.on('beginWakeUp', () => {
    console.log('beginWakeUp triggered');
});

screenlock.on9+

on(type: 'beginSleep' | 'endSleep' | 'changeUser', callback: Callback): void

注册锁屏状态变化回调。

系统能力: SystemCapability.MiscServices.ScreenLock

系统API:此接口为系统接口,三方应用不支持调用。

参数

参数名 类型 必填 说明
type string 设置事件类型。 - type为"beginSleep",表示开始休眠。 - type为"endSleep",表示结束休眠。 - type为"changeUser",表示切换用户。
callback Callback 事件回调方法。 返回事件相应的状态。

示例

复制代码
screenlock.on('beginSleep', (why) => {
    console.log('beginSleep triggered:' + why);
});

screenlock.on9+

on(type: 'screenlockEnabled', callback: Callback): void

注册锁屏状态变化回调。

系统能力: SystemCapability.MiscServices.ScreenLock

系统API:此接口为系统接口,三方应用不支持调用。

参数

参数名 类型 必填 说明
type string 设置事件类型。 - type为"screenlockEnabled",表示锁屏是否启用。
callback Callback 注册成功的回调。 回调结果用true/false表示。

示例

复制代码
screenlock.on('screenlockEnabled', (isEnabled) => {
    console.log('screenlockEnabled triggered, result:' + isEnabled);
});

screenlock.off9+

off(type: 'beginWakeUp' | 'endWakeUp' | 'beginScreenOn' | 'endScreenOn' | 'beginScreenOff' | 'endScreenOff' | 'unlockScreen' | 'beginExitAnimation' | 'screenlockEnabled' | 'beginSleep' | 'endSleep' | 'changeUser', callback: Callback): void

取消注册锁屏状态变化回调。

系统能力: SystemCapability.MiscServices.ScreenLock

系统API:此接口为系统接口,三方应用不支持调用。

参数

参数名 类型 必填 说明
type string 设置事件类型。 - type为"beginWakeUp",表示事件开始时开始唤醒。 - type为"endWakeUp",表示事件结束时结束唤醒。 - type为"beginScreenOn",表示事件开始时开始亮屏。 - type为"endScreenOn",表示事件结束时结束亮屏。 - type为"beginScreenOff",表示事件开始时开始灭屏。 - type为"endScreenOff",表示事件结束时结束灭屏。 - type为"unlockScreen",表示请求解锁。 - type为"beginExitAnimation",表示动画开始退场。 - type为"screenlockEnabled",表示锁屏是否启用。 - type为"beginSleep",表示开始休眠。 - type为"endSleep",表示结束休眠。 - type为"changeUser",表示切换用户。
callback Callback 注册成功的回调。

示例

复制代码
screenlock.off('beginWakeUp', () => {
    console.log("callback");
});

screenlock.sendScreenLockEvent9+

sendScreenLockEvent(event: String, parameter: number, callback: AsyncCallback): void

应用发送事件到锁屏服务,异步方法。

系统能力: SystemCapability.MiscServices.ScreenLock

系统API:此接口为系统接口,三方应用不支持调用。

参数

参数名 类型 必填 说明
event String 事件类型,支持如下取值: - "unlockScreenResult",表示解锁结果。 - "screenDrawDone",表示屏幕绘制完成。
parameter number 解锁状态。 - parameter为0,表示解锁成功。 - parameter为1,表示解锁失败。 - parameter为2,表示解锁取消。
callback AsyncCallback 表示执行结果。

示例

复制代码
screenlock.sendScreenLockEvent('unlockScreenResult', 0, (err, result) => {
    console.log('sending result:' + result);
});

screenlock.sendScreenLockEvent9+

sendScreenLockEvent(event: String, parameter: number): Promise

应用发送事件到锁屏服务,异步方法。

系统能力: SystemCapability.MiscServices.ScreenLock

系统API:此接口为系统接口,三方应用不支持调用。

参数

参数名 类型 必填 说明
event String 事件类型,支持如下取值: - "unlockScreenResult",表示解锁结果。 - "screenDrawDone",表示屏幕绘制完成。
parameter number 解锁状态。 - parameter为0,表示解锁成功。 - parameter为1,表示解锁失败。 - parameter为2,表示解锁取消。

返回值

类型 说明
Promise 以Promise形式返回执行结果。

示例

复制代码
screenlock.sendScreenLockEvent('unlockScreenResult', 0).then((result) => {
    console.log('sending result:' + result);
});
相关推荐
不羁的木木9 小时前
《HarmonyOS底部页签-沉浸光感组件实战》高级定制:图标出血与分割线
华为·harmonyos
量子炒饭大师11 小时前
【Linux系统编程:进程概念】——【从 冯诺依曼系统体系结构 到 操作系统】
linux·运维·服务器·操作系统·冯诺依曼
Goway_Hui11 小时前
【鸿蒙原生应用开发--ArkUI--015】File-manager 文件管理器应用开发教程
华为·harmonyos
带娃的IT创业者11 小时前
数字考古学:当整个操作系统史被装进一个浏览器
操作系统·前端开发·webassembly·虚拟化技术·数字考古学·windows 95·复古计算
不羁的木木13 小时前
《HarmonyOS底部页签-沉浸光感组件实战》基础入门:认识HdsTabs容器与核心配置
华为·harmonyos
不羁的木木13 小时前
《HarmonyOS技术精讲》三:记忆链接 ── 跨场景数据融合
pytorch·华为·harmonyos
2501_9197490314 小时前
鸿蒙 Flutter 实战:image_crop 0.4.1 适配 3.27-ohos 全流程
flutter·华为·harmonyos
祭曦念14 小时前
鸿蒙应用的生命周期与页面跳转:从入门到实战
华为·harmonyos
轻口味14 小时前
HarmonyOS 6.1.1 全栈实战录 - 88 实战 Ability Kit 启动生命周期预热与快照恢复机
华为·harmonyos·鸿蒙
Goway_Hui15 小时前
【鸿蒙原生应用开发--ArkUI--013】Exercise-tracker 运动记录应用开发教程
华为·harmonyos