说明
使用 chrome.sessions
API 查询和恢复浏览会话中的标签页和窗口。
权限
sessions
类型
Device
属性
- deviceName
字符串
外部设备的名称。
- 专题演讲
会话[]
外部设备的打开窗口会话列表,按会话的修改时间从最近到最远排序。
Filter
属性
- maxResults
number 可选
相应列表中要提取的条目数上限。省略此参数可提取最大条目数 (
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,
): Promise<Device[]>
检索所有具有已同步会话的设备。
参数
- filter
过滤条件(可选)
- callback
函数 可选
callback
参数如下所示:(devices: Device[]) => void
- 设备
设备[]
每个已同步会话的
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[]>
获取最近关闭的标签页和/或窗口的列表。
参数
返回
-
Promise<Session[]>
Chrome 96 及更高版本仅 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。
restore()
chrome.sessions.restore(
sessionId?: string,
callback?: function,
): Promise<Session>
重新打开 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