说明
使用 chrome.sessions
API 查询和恢复浏览会话中的标签页和窗口。
权限
sessions
类型
Device
属性
-
deviceName
字符串
外部设备的名称。
-
专题演讲
会话[]
外部设备的打开窗口会话列表,按修改时间从最近到最久排序。
Filter
属性
-
maxResults
编号(可选)
要从请求的列表中提取的条目数量上限。省略此参数可提取最大条目数 (
sessions.MAX_SESSION_RESULTS
)。
Session
属性
-
lastModified
数值
窗口或标签页关闭或修改的时间,以自公元纪年开始计算的秒数表示。
-
Tab
标签页(可选)
tabs.Tab
(如果此条目描述的是标签页)。系统会设置此值或sessions.Session.window
。 -
窗口
窗口(可选)
windows.Window
(如果此条目描述的是窗口)。系统会设置此值或sessions.Session.tab
。
属性
MAX_SESSION_RESULTS
请求列表中包含的 sessions.Session
的数量上限。
值
25
方法
getDevices()
chrome.sessions.getDevices(
filter?: Filter,
callback?: function,
)
检索具有已同步会话的所有设备。
参数
-
filter
过滤器(可选)
-
callback
函数(可选)
callback
参数如下所示:(devices: Device[]) => void
-
设备
Device[]
每个已同步会话的
sessions.Device
对象列表,按会话最近修改时间从大到小排序。tabs.Tab
对象会按sessions.Session
对象的windows.Window
中的新近程度排序。
-
返回
-
Promise<Device[]>
Chrome 96 及更高版本只有 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。
getRecentlyClosed()
chrome.sessions.getRecentlyClosed(
filter?: Filter,
callback?: function,
)
获取最近关闭的标签页和/或窗口的列表。
参数
返回
-
Promise<Session[]>
Chrome 96 及更高版本只有 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。
restore()
chrome.sessions.restore(
sessionId?: string,
callback?: function,
)
重新打开 windows.Window
或 tabs.Tab
,并提供一个可选回调,以便在条目已恢复时运行。
参数
-
sessionId
字符串(选填)
要恢复的
windows.Window.sessionId
或tabs.Tab.sessionId
。如果未指定此参数,系统会恢复最近关闭的会话。 -
callback
函数(可选)
callback
参数如下所示:(restoredSession: Session) => void
-
restoredSession
包含已恢复的
windows.Window
或tabs.Tab
对象的sessions.Session
。
-
返回
-
Promise<会话>
Chrome 96 及更高版本只有 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。
事件
onChanged
chrome.sessions.onChanged.addListener(
callback: function,
)
当最近关闭的标签页和/或窗口发生变化时触发。此事件不会监控已同步的会话更改。
参数
-
callback
函数
callback
参数如下所示:() => void