鎖屏管理
鎖屏管理服務是OpenHarmony中系統(tǒng)服務,為鎖屏應用提供注冊亮屏、滅屏、開啟屏幕、結束休眠、退出動畫、請求解鎖結果監(jiān)聽,并提供回調(diào)結果給鎖屏應用。鎖屏管理服務向三方應用提供請求解鎖、查詢鎖屏狀態(tài)、查詢是否設置鎖屏密碼的能力。
說明: 本模塊首批接口從API version 7開始支持。后續(xù)版本的新增接口,采用上角標單獨標記接口的起始版本。 開發(fā)前請熟悉鴻蒙開發(fā)指導文檔 :[
gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]
導入模塊
import screenlock from '@ohos.screenLock';
screenlock.isScreenLocked
isScreenLocked(callback: AsyncCallback): void
判斷屏幕是否鎖屏,使用callback作為異步方法。
系統(tǒng)能力 : SystemCapability.MiscServices.ScreenLock
參數(shù) :
| 參數(shù)名 | 類型 | 必填 | 說明 |
|---|---|---|---|
| callback | AsyncCallback | 是 | 回調(diào)函數(shù),返回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作為異步方法。
系統(tǒng)能力 : 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作為異步方法。
系統(tǒng)能力 : SystemCapability.MiscServices.ScreenLock
參數(shù) :
| 參數(shù)名 | 類型 | 必填 | 說明 |
|---|---|---|---|
| callback | AsyncCallback | 是 | 回調(diào)函數(shù)。返回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作為異步方法。
系統(tǒng)能力 : 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作為異步方法。
系統(tǒng)能力 : SystemCapability.MiscServices.ScreenLock
參數(shù) :
| 參數(shù)名 | 類型 | 必填 | 說明 |
|---|---|---|---|
| callback | AsyncCallback | 是 | 回調(diào)函數(shù),失敗時返回錯誤信息。 |
示例 :
screenlock.unlockScreen((err) = > {
if (err) {
console.error('unlockScreen callback error - > ${JSON.stringify(err)}');
return;
}
console.info('unlockScreen callback success');
});
screenlock.unlockScreen
unlockScreen(): Promise
解鎖屏幕,使用Promise作為異步方法。
系統(tǒng)能力 : 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
注冊鎖屏狀態(tài)變化回調(diào)。
系統(tǒng)能力 : SystemCapability.MiscServices.ScreenLock
系統(tǒng)API :此接口為系統(tǒng)接口,三方應用不支持調(diào)用。
參數(shù) :
| 參數(shù)名 | 類型 | 必填 | 說明 |
|---|---|---|---|
| type | string | 是 | 設置事件類型。 - type為"beginWakeUp",表示事件開始時開始喚醒。 - type為"endWakeUp",表示事件結束時結束喚醒。 - type為"beginScreenOn",表示事件開始時開始亮屏。 - type為"endScreenOn",表示事件結束時結束亮屏。 - type為"beginScreenOff",表示事件開始時開始滅屏。 - type為"endScreenOff",表示事件結束時結束滅屏。 - type為"unlockScreen",表示請求解鎖。 - type為"beginExitAnimation",表示動畫開始退場。 |
| callback | Callback | 是 | 事件回調(diào)方法。 |
示例 :
screenlock.on('beginWakeUp', () = > {
console.log('beginWakeUp triggered');
});
screenlock.on9+
on(type: 'beginSleep' | 'endSleep' | 'changeUser', callback: Callback): void
注冊鎖屏狀態(tài)變化回調(diào)。
系統(tǒng)能力 : SystemCapability.MiscServices.ScreenLock
系統(tǒng)API :此接口為系統(tǒng)接口,三方應用不支持調(diào)用。
參數(shù) :
| 參數(shù)名 | 類型 | 必填 | 說明 |
|---|---|---|---|
| type | string | 是 | 設置事件類型。 - type為"beginSleep",表示開始休眠。 - type為"endSleep",表示結束休眠。 - type為"changeUser",表示切換用戶。 |
| callback | Callback | 是 | 事件回調(diào)方法。 返回事件相應的狀態(tài)。 |
示例 :
screenlock.on('beginSleep', (why) = > {
console.log('beginSleep triggered:' + why);
});
screenlock.on9+
on(type: 'screenlockEnabled', callback: Callback): void
注冊鎖屏狀態(tài)變化回調(diào)。
系統(tǒng)能力 : SystemCapability.MiscServices.ScreenLock
系統(tǒng)API :此接口為系統(tǒng)接口,三方應用不支持調(diào)用。
參數(shù) :
| 參數(shù)名 | 類型 | 必填 | 說明 |
|---|---|---|---|
| type | string | 是 | 設置事件類型。 - type為"screenlockEnabled",表示鎖屏是否啟用。 |
| callback | Callback | 是 | 注冊成功的回調(diào)。 回調(diào)結果用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
取消注冊鎖屏狀態(tài)變化回調(diào)。
系統(tǒng)能力 : SystemCapability.MiscServices.ScreenLock
系統(tǒng)API :此接口為系統(tǒng)接口,三方應用不支持調(diào)用。
參數(shù) :
| 參數(shù)名 | 類型 | 必填 | 說明 |
|---|---|---|---|
| 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 | 是 | 注冊成功的回調(diào)。 |
示例 :
screenlock.off('beginWakeUp', () = > {
console.log("callback");
});
screenlock.sendScreenLockEvent9+
sendScreenLockEvent(event: String, parameter: number, callback: AsyncCallback): void
應用發(fā)送事件到鎖屏服務,異步方法。
系統(tǒng)能力 : SystemCapability.MiscServices.ScreenLock
系統(tǒng)API :此接口為系統(tǒng)接口,三方應用不支持調(diào)用。
參數(shù) :
| 參數(shù)名 | 類型 | 必填 | 說明 |
|---|---|---|---|
| event | String | 是 | 事件類型,支持如下取值: - "unlockScreenResult",表示解鎖結果。 - "screenDrawDone",表示屏幕繪制完成。 |
| parameter | number | 是 | 解鎖狀態(tài)。 - parameter為0,表示解鎖成功。 - parameter為1,表示解鎖失敗。 - parameter為2,表示解鎖取消。 |
| callback | AsyncCallback | 是 | 表示執(zhí)行結果。 |
示例 :
screenlock.sendScreenLockEvent('unlockScreenResult', 0, (err, result) = > {
console.log('sending result:' + result);
});
screenlock.sendScreenLockEvent9+
sendScreenLockEvent(event: String, parameter: number): Promise
應用發(fā)送事件到鎖屏服務,異步方法。
系統(tǒng)能力 : SystemCapability.MiscServices.ScreenLock
系統(tǒng)API :此接口為系統(tǒng)接口,三方應用不支持調(diào)用。
參數(shù) :
| 參數(shù)名 | 類型 | 必填 | 說明 |
|---|---|---|---|
| event | String | 是 | 事件類型,支持如下取值: - "unlockScreenResult",表示解鎖結果。 - "screenDrawDone",表示屏幕繪制完成。 |
| parameter | number | 是 | 解鎖狀態(tài)。 - parameter為0,表示解鎖成功。 - parameter為1,表示解鎖失敗。 - parameter為2,表示解鎖取消。 |
返回值 :
| 類型 | 說明 |
|---|---|
| Promise | 以Promise形式返回執(zhí)行結果。HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿 |

示例 :
screenlock.sendScreenLockEvent('unlockScreenResult', 0).then((result) = > {
console.log('sending result:' + result);
});
審核編輯 黃宇
-
開發(fā)系統(tǒng)
+關注
關注
0文章
39瀏覽量
10293 -
鴻蒙
+關注
關注
60文章
2963瀏覽量
45889
發(fā)布評論請先 登錄
鴻蒙實戰(zhàn)項目開發(fā):【短信服務】
鴻蒙5開發(fā)寶藏案例分享---穿戴開發(fā)寶藏指南
基于OpenHarmony的Graphic標準子系統(tǒng)能力分析
請問Openharmony壁紙應用如何修改?
鴻蒙系統(tǒng)鎖屏的幾個快捷方式,能不能給個開關!
HarmonyOS/OpenHarmony應用開發(fā)-ArkTSAPI系統(tǒng)能力SystemCapability
鴻蒙原生應用/元服務開發(fā)-Stage模型能力接口(二)
鴻蒙原生應用/元服務開發(fā)-Stage模型能力接口(四)
鴻蒙之@ohos.bundle.defaultAppManager (默認應用管理)
鴻蒙開發(fā)UI界面——@ohos.mediaquery (媒體查詢)
鴻蒙開發(fā)實戰(zhàn):【文件管理】
鴻蒙開發(fā)系統(tǒng)基礎能力:ohos.pasteboard 剪貼板
鴻蒙開發(fā)管理:ohos.account.osAccount 系統(tǒng)帳號管理
鴻蒙開發(fā)系統(tǒng)基礎能力:ohos.screenLock 鎖屏管理
說明: 本模塊首批
評論