鎖屏管理
鎖屏管理服務是OpenHarmony中系統服務,為鎖屏應用提供注冊亮屏、滅屏、開啟屏幕、結束休眠、退出動畫、請求解鎖結果監聽,并提供回調結果給鎖屏應用。鎖屏管理服務向三方應用提供請求解鎖、查詢鎖屏狀態、查詢是否設置鎖屏密碼的能力。
說明: 本模塊首批接口從API version 7開始支持。后續版本的新增接口,采用上角標單獨標記接口的起始版本。 開發前請熟悉鴻蒙開發指導文檔 :[
gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
導入模塊
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形式返回執行結果。HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿 |
示例 :
screenlock.sendScreenLockEvent('unlockScreenResult', 0).then((result) = > {
console.log('sending result:' + result);
});
審核編輯 黃宇
-
開發系統
+關注
關注
0文章
38瀏覽量
9669 -
鴻蒙
+關注
關注
57文章
2310瀏覽量
42742
發布評論請先 登錄
相關推薦
評論