Ana*_*ion 10 google-chrome google-chrome-extension chrome-extension-manifest-v3
我有一个背景脚本定义如下
"background": {
"service_worker": "background.js"
},
Run Code Online (Sandbox Code Playgroud)
和内容脚本
"content_scripts": [
{
"matches": [
"*://youtube.com/*"
],
"js": ["content-script.js"]
}
Run Code Online (Sandbox Code Playgroud)
背景与往常一样
runtime.onMessage.addListener
Run Code Online (Sandbox Code Playgroud)
和内容脚本
chrome.runtime.sendMessage({
Run Code Online (Sandbox Code Playgroud)
但是,在某些罕见的情况下(大约 2-5% 的用户),尽管 YouTube 的选项卡已打开,但 Service Worker 仍保持不活动状态,因此 sendMessage 调用不会返回任何内容。
这只能通过关闭并重新打开扩展来解决。
如果服务工作者睡着了,有没有办法以编程方式唤醒它?是否有可能导致 Service Worker 无法醒来的原因?未捕获的异常,清单设置?
我真的很迷失在这里,调试起来非常困难,因为在一个月内我从未发生过这种情况,而且只有当用户同意进行通话和共享屏幕时我才能调试它。
该扩展程序拥有超过一百万用户,但这简直要了我的命。
该扩展可以在https://github.com/Anarios/return-youtube-dislike/tree/main/Extensions/combined看到
最新版本的 chrome 上已确认发生此情况。
归档时间: |
|
查看次数: |
2719 次 |
最近记录: |