Runninglock鎖
該模塊主要提供Runninglock鎖相關操作的接口,包括創建、查詢、持鎖、釋放鎖等操作。
說明: 本模塊首批接口從API version 7開始支持。后續版本的新增接口,采用上角標單獨標記接口的起始版本。 開發前請熟悉鴻蒙開發指導文檔 :[
gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
導入模塊
import runningLock from '@ohos.runningLock';
RunningLockType
RunningLock鎖的類型。
系統能力: 以下各項對應的系統能力均為SystemCapability.PowerManager.PowerManager.Core
名稱 | 默認值 | 描述 |
---|---|---|
BACKGROUND | 1 | 阻止系統休眠的鎖。 |
PROXIMITY_SCREEN_CONTROL | 2 | 通過接近或者遠離狀態來控制亮滅屏的鎖。 |
isRunningLockTypeSupported
isRunningLockTypeSupported(type: RunningLockType, callback: AsyncCallback): void
查詢系統是否支持該類型的鎖。
系統能力: SystemCapability.PowerManager.PowerManager.Core
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | RunningLockType | 是 | 需要查詢的鎖的類型。 |
callback | AsyncCallback | 是 | 指定的callback回調方法,用于獲取返回值。 callback返回值:支持返回true,不支持返回false。 |
示例:
runningLock.isRunningLockTypeSupported(runningLock.RunningLockType.BACKGROUND, (error, supported) = > {
if (typeof error === "undefined") {
console.info('BACKGROUND support status is ' + supported);
} else {
console.log('error: ' + error);
}
})
isRunningLockTypeSupported
isRunningLockTypeSupported(type: RunningLockType): Promise
查詢系統是否支持該類型的鎖。
系統能力: SystemCapability.PowerManager.PowerManager.Core
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | RunningLockType | 是 | 需要查詢的鎖的類型。 |
返回值:
類型 | 說明 |
---|---|
Promise | Promise實例,用于異步獲取返回值,支持返回true,不支持返回false。 |
示例:
runningLock.isRunningLockTypeSupported(runningLock.RunningLockType.PROXIMITY_SCREEN_CONTROL)
.then(supported = > {
console.info('PROXIMITY_SCREEN_CONTROL support status is ' + supported);
})
.catch(error = > {
console.log('error: ' + error);
});
createRunningLock
createRunningLock(name: string, type: RunningLockType, callback: AsyncCallback): void
創建RunningLock鎖。
系統能力: SystemCapability.PowerManager.PowerManager.Core
需要權限: ohos.permission.RUNNING_LOCK
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
name | string | 是 | 鎖的名字。 |
type | RunningLockType | 是 | 要創建的鎖的類型。 |
callback | AsyncCallback<[RunningLock]> | 是 | 指定的callback回調方法,用于獲取返回的RunningLock鎖對象。 |
示例:
runningLock.createRunningLock("running_lock_test", runningLock.RunningLockType.BACKGROUND, (error, lockIns) = > {
if (typeof error === "undefined") {
console.log('create runningLock test error: ' + error);
} else {
var used = lockIns.isUsed();
console.info('runninglock is used: ' + used);
lockIns.lock(500);
used = lockIns.isUsed();
console.info('after lock runninglock is used ' + used);
}
})
createRunningLock
createRunningLock(name: string, type: RunningLockType): Promise
創建Runninglock鎖。
系統能力: SystemCapability.PowerManager.PowerManager.Core
需要權限: ohos.permission.RUNNING_LOCK
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
name | string | 是 | 鎖的名字。 |
type | RunningLockType | 是 | 要創建的鎖的類型。 |
返回值:
類型 | 說明 |
---|---|
Promise<[RunningLock]> | Promise實例,用于異步獲取返回的RunningLock鎖對象。 |
示例:
runningLock.createRunningLock("running_lock_test", runningLock.RunningLockType.BACKGROUND)
.then(runninglock = > {
console.info('create runningLock success');
})
.catch(error = > {
console.log('create runningLock test error: ' + error);
})
RunningLock
阻止系統休眠的鎖。
lock
lock(timeout: number): void
鎖定和持有RunningLock。
系統能力: SystemCapability.PowerManager.PowerManager.Core
需要權限: ohos.permission.RUNNING_LOCK
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
timeout | number | 否 | 鎖定和持有RunningLock的時長,單位:毫秒。 |
示例:
runningLock.createRunningLock("running_lock_test", runningLock.RunningLockType.BACKGROUND)
.then(runningLock = > {
runningLock.lock(100)
console.info('create runningLock success')
})
.catch(error = > {
console.log('create runningLock test error: ' + error)
});
unlock
unlock(): void
釋放Runninglock鎖。
系統能力: SystemCapability.PowerManager.PowerManager.Core
需要權限: ohos.permission.RUNNING_LOCK
示例:
runningLock.createRunningLock("running_lock_test", runningLock.RunningLockType.BACKGROUND)
.then(runningLock = > {
runningLock.unlock()
console.info('create and unLock runningLock success')
})
.catch(error = > {
console.log('create runningLock test error: ' + error)
});
isUsed
isUsed(): boolean
查詢當前Runninglock是持有狀態還是釋放狀態。
系統能力: SystemCapability.PowerManager.PowerManager.Core
返回值:
類型 | 說明 |
---|---|
boolean | 當前RunningLock是持有狀態返回true,釋放狀態返回false。HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿 |
示例:
runningLock.createRunningLock("running_lock_test", runningLock.RunningLockType.BACKGROUND)
.then(runningLock = > {
var used = runningLock.isUsed()
console.info('runningLock used status: ' + used)
})
.catch(error = > {
console.log('runningLock isUsed test error: ' + error)
});
審核編輯 黃宇
-
接口
+關注
關注
33文章
8497瀏覽量
150835 -
鴻蒙
+關注
關注
57文章
2310瀏覽量
42743
發布評論請先 登錄
相關推薦
評論