【发布时间】:2022-07-21 19:14:14
【问题描述】:
我正在尝试使用 chrome 扩展 tabCapture API。为此,我连接了一个简单的后台脚本,该脚本将点击处理程序添加到扩展图标(通过chrome.action)。处理程序应该通过对chrome.tabCapture.capture 的简单调用开始捕获选项卡。但是,tabCapture 未定义。完整的源代码由两个文件组成。内容如下所示。
manifest.json
{
"name": "tab capture test",
"description": "Manifest v3 tab capture test",
"version": "1.0.0",
"manifest_version": 3,
"background": {
"service_worker": "background.js"
},
"permissions":[
"storage",
"activeTab",
"tabCapture",
"scripting"
],
"action": {}
}
background.js
chrome.action.onClicked.addListener((tab) => {
chrome.tabCapture.capture(
{
video: true,
},
(stream) => {
console.log(stream)
}
)
})
当我单击扩展图标时,这会导致错误。
Error in event handler: TypeError: Cannot read properties of undefined (reading 'capture')
为什么tabCapture 可能未定义?
【问题讨论】:
-
ManifestV3 仍然是半实现半破坏。见crbug.com/1214847。