1 Star 0 Fork 5.3K

OpenHarmony-build / docs

forked from OpenHarmony / docs 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
js-apis-runninglock.md 20.53 KB
一键复制 编辑 原始数据 按行查看 历史
zengyawen 提交于 2021-11-10 20:02 . add arkui

Runninglock锁

说明: 从 API Version 7 开始支持。

导入模块

import runninglock from '@ohos.runningLock';

权限

申请、使用锁的权限:ohos.permission.RUNNING_LOCK

RunningLockType

RunningLock锁的类型。

名称

默认值

描述

BACKGROUND

1

阻止系统休眠的锁。

PROXIMITY_SCREEN_CONTROL

2

通过接近或者远离状态来控制亮灭屏的锁。

isRunningLockTypeSupported

isRunningLockTypeSupported(type: RunningLockType, callback: AsyncCallback<boolean>): void

查询系统是否支持该类型的锁。

  • 参数:

    参数名

    类型

    必填

    说明

    type

    RunningLockType

    需要查询的锁的类型。

    callback

    AsyncCallback<boolean>

    指定的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<boolean>

查询系统是否支持该类型的锁。

  • 参数:

    参数名

    类型

    必填

    说明

    type

    RunningLockType

    需要查询的锁的类型。

  • 返回值:

    类型

    说明

    Promise<boolean>

    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<RunningLock>): void

创建RunningLock锁。

  • 参数:

    参数名

    类型

    必填

    说明

    name

    string

    锁的名字。

    type

    RunningLockType

    要创建的锁的类型。

    callback

    AsyncCallback<RunningLock>

    指定的callback回调方法,用于获取返回的RunningLock锁对象。

  • 示例:

    runningLock.createRunningLock("running_lock_test", runningLock.RunningLockType.BACKGROUND)
    .then(runninglock => {
        var used = runninglock.isUsed();
        console.info('runninglock is used: ' + used);
        runninglock.lock(500);
        used = runninglock.isUsed();
        console.info('after lock runninglock is used ' + used);
    })
    .catch(error => {
        console.log('create runningLock test error: ' + error);
    })

createRunningLock

createRunningLock(name: string, type: RunningLockType): Promise<RunningLock>

创建Runninglock锁。

  • 参数:

    参数名

    类型

    必填

    说明

    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

  • 参数:

    参数名

    类型

    必填

    说明

    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('Lock runningLock test error: ' + error)
    });

unlock

unlock(): void

释放Runninglock锁。

  • 示例:

    runningLock.createRunningLock("running_lock_test", runningLock.RunningLockType.BACKGROUND)
    .then(runningLock => {
        runningLock.unlock()
        console.info('unLock runningLock success')
    })
    .catch(error => {
        console.log('unLock runningLock test error: ' + error)
    });

isUsed

isUsed(): boolean

查询当前Runninglock是持有状态,还是释放状态。

  • 返回值:

    类型

    说明

    boolean

    当前RunningLock是持有状态返回true,释放状态返回false。

  • 示例:

    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)
    });
1
https://gitee.com/openharmony-build/docs.git
git@gitee.com:openharmony-build/docs.git
openharmony-build
docs
docs
master

搜索帮助