chrome.idle

说明

使用 chrome.idle API 检测机器的空闲状态何时发生变化。

权限

idle

您必须在扩展程序的清单中声明 "idle" 权限,才能使用空闲 API。例如:

{
  "name": "My extension",
  ...
  "permissions": [
    "idle"
  ],
  ...
}

类型

IdleState

Chrome 44 及更高版本

枚举

“有效”

“idle”

“locked”

方法

getAutoLockDelay()

Chrome 73 及更高版本 仅限 ChromeOS
chrome.idle.getAutoLockDelay(): Promise<number>

获取屏幕在空闲时自动锁定的时间(以秒为单位)。如果屏幕从不自动锁定,则返回零时长。目前仅在 ChromeOS 上受支持。

返回

  • Promise<number>

    Chrome 116 及更高版本

queryState()

chrome.idle.queryState(
  detectionIntervalInSeconds: number,
)
: Promise<IdleState>

如果系统已锁定,则返回“locked”;如果用户在指定秒数内未生成任何输入,则返回“idle”;否则返回“active”。

参数

  • detectionIntervalInSeconds

    数值

    如果自检测到上次用户输入以来已过去 detectionIntervalInSeconds 秒,则系统被视为处于空闲状态。

返回

  • Promise<IdleState>

    Chrome 116 及更高版本

setDetectionInterval()

chrome.idle.setDetectionInterval(
  intervalInSeconds: number,
)
: void

设置用于确定系统何时处于 onStateChanged 事件的空闲状态的时间间隔(以秒为单位)。默认间隔为 60 秒。

参数

  • intervalInSeconds

    数值

    用于确定系统何时处于空闲状态的阈值(以秒为单位)。

事件

onStateChanged

chrome.idle.onStateChanged.addListener(
  callback: function,
)

当系统更改为活动、空闲或锁定状态时触发。如果屏幕已锁定或屏幕保护程序已激活,则触发的事件为“locked”;如果系统已解锁,但用户在指定秒数内未生成任何输入,则触发的事件为“idle”;当用户在闲置的系统上生成输入时,触发的事件为“active”。

参数

  • callback

    函数

    callback 参数如下所示:

    (newState: IdleState) => void