说明
使用 chrome.sessions
API 可查询和恢复浏览会话中的标签页及窗口。
权限
sessions
类型
Device
属性
-
deviceName
string
外部设备的名称。
-
sessions
会话[]
外部设备的打开窗口会话列表,按最近修改时间从最近到最早修改的会话排序。
Filter
属性
-
maxResults
数字可选
要在请求列表中提取的条目数上限。省略此参数可提取最大条目数 (
sessions.MAX_SESSION_RESULTS
)。
Session
属性
-
lastModified
number
窗口或标签页关闭或修改的时间,以自纪元以来的毫秒数表示。
-
标签页
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
Filter(可选)
-
callback
函数(可选)
callback
参数如下所示:(devices: Device[]) => void
-
设备
设备[]
每个已同步会话的
sessions.Device
对象列表,按最近修改会话的设备到最近修改会话的设备进行排序。tabs.Tab
对象按sessions.Session
对象的windows.Window
中的新近度进行排序。
-
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<Session>
Chrome 96 及更高版本只有 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。
活动
onChanged
chrome.sessions.onChanged.addListener(
callback: function,
)
在最近关闭的标签页和/或窗口发生更改时触发。此事件不会监控已同步会话的更改。
参数
-
callback
功能
callback
参数如下所示:() => void