Closed BladeandSoulLyn closed 4 months ago
补充:目前发现edge商店里的10.2.10版本没有此问题,重启浏览器后扩展也能正常工作,所以暂时转用edge商店里的版本。
我这里依然无法复现,感觉问题的根源在于edge浏览器在有些情况下会丢失扩展程序数据,可能跟 #268 是一个问题
为了进一步分析问题原因,能否麻烦进行以下操作:
await chrome.scripting.getRegisteredContentScripts()
,证实返回的数组不为空(显示 [{...}]
,展开后为下面一段所示的内容),再运行 await chrome.permissions.getAll()
,证实返回 {origins: Array(2), permissions: Array(5)}
以下是 await chrome.scripting.getRegisteredContentScripts()
应该返回的内容:
{
"allFrames": true,
"css": [
"generated/injected.css"
],
"excludeMatches": [
"https://www.bilibili.com/robots.txt?pakku_sandbox"
],
"id": "pakku-ajax",
"js": [
"generated/xhr_hook.js"
],
"matchOriginAsFallback": false,
"matches": [
"*://*.bilibili.com/*"
],
"persistAcrossSessions": true,
"runAt": "document_start",
"world": "MAIN"
}
如果你启用了一些自动清理系统垃圾的功能,或者改了edge浏览器自身的一些设置(比如设置同步功能,以及 “关闭时清除浏览数据”,或者别的什么权限设置),可以关闭后重装pakku试试问题有没有解决。
感谢配合,因为edge商店预计在几周后也更新到新版,因此如果一直搞不明白问题原因,届时你依然会遇到此问题
@xmcp 你好,感谢回复!我测试的时候edge的版本更新至了124.0.2478.51 (正式版本) (64 位)。现回报测试结果如下: 1.重装扩展,确认可用的情况下更改设置,运行命令并展开可以看到正常返回的内容: 2.重启浏览器,确认扩展不可用。进入设置界面,发现刚才更改的设置是正常保留的,并未被重置。此时运行命令发现返回数组为空: 关于设置同步和自动清理的功能,我尝试关闭了edge://settings/profiles/sync里的扩展同步选项、重新同步和重置同步选项以及edge://settings/reset的还原默认设置,但问题依旧。 不过,当我尝试在edge://settings/profiles里新建一个用户profile而不登录微软账号的情况下测试时,发现问题解决了(重启后运行命令也能正常返回内容,扩展正常生效)。不知道是什么原因造成的在我自己的profile里就不生效的呢...
那现在情况很清晰了,就是edge浏览器在你这个profile下每次重启之后就会丢失扩展程序通过 chrome.scripting
API 注册的 content script,导致pakku出现问题。
edge浏览器这个行为 肯定是错误的,可能是什么数据文件损坏了导致的,可以试试重置设置或者重装edge浏览器。
虽然这个问题的本质是edge浏览器不对劲,但我感觉微软短时间内也不会解决它(尤其是它难以复现,导致就算报告了bug也大概率没用)。pakku在后续更新edge版本时将临时应对一下,每次浏览器启动后都重新尝试注册 content script。
如果你重装浏览器后也无法解决此问题,可以暂时先使用edge商店的旧版。
是否可以稳定复现
是
复现步骤
大约是两三天前出现此问题,进入任何视频均提示本页面没有发现B站播放器。 如果卸载此扩展再从chrome商店重新安装,则这次浏览期间扩展可正常工作; 但如果关掉浏览器的话,下次启动浏览器后访问B站时问题复现。
预期行为
扩展能够合并和过滤弹幕
实际行为
任何视频均提示本页面没有发现B站播放器
禁用 pakku 后 bug 是否存在
否
是否与其他插件有关
否。仅启用 pakku时,亦能用上述步骤复现。
B 站播放器版本号
4.8.17-806fa473
pakku 调试信息
[Debug Info]
**Version:** 2024.4.7 **Channel:** chrome **User Agent:** `Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36 Edg/123.0.0.0` **Incognito:** `false` **Has Session Storage:** `true` **localStorage:** `{}` **Views:** - `chrome-extension://jklfcpboamajpiikgkbjcnnnnooefbhh/page/options.html` - `chrome-extension://jklfcpboamajpiikgkbjcnnnnooefbhh/page/troubleshooting.html` **Permissions:** `{"origins":["*://*.bilibili.com/*","https://www.bilibili.com/robots.txt?pakku_sandbox"],"permissions":["contextMenus","notifications","storage","scripting","declarativeNetRequestWithHostAccess"]}` **State:** `{"GLOBAL_SWITCH":true,"_INITIALIZED":true}` **Config:** `{"_LAST_UPDATE_TIME":0,"_CONFIG_VER":1,"ADVANCED_USER":false,"THRESHOLD":20,"MAX_DIST":5,"MAX_COSINE":45,"TRIM_PINYIN":true,"TRIM_ENDING":true,"TRIM_SPACE":true,"TRIM_WIDTH":true,"FORCELIST":[["^23{2,}$","23333"],["^6{3,}$","66666"]],"WHITELIST":[],"CROSS_MODE":true,"PROC_TYPE7":true,"PROC_TYPE4":true,"PROC_POOL1":false,"DANMU_MARK":"prefix","MARK_THRESHOLD":1,"DANMU_SUBSCRIPT":true,"ENLARGE":true,"SHRINK":false,"MODE_ELEVATION":true,"REPRESENTATIVE_PERCENT":20,"TOOLTIP":true,"TOOLTIP_KEYBINDING":true,"AUTO_DISABLE_DANMU":false,"AUTO_DANMU_LIST":false,"FLUCTLIGHT":false,"BREAK_UPDATE":false,"SCROLL_THRESHOLD":1200,"USERSCRIPT":null,"POPUP_BADGE":"percent","COMBINE_THREADS":3}` **Tabs:** - ID=1182699436 status=complete `https://www.bilibili.com/video/BV1ct421N7xA/?vd_source=804f1b7c36f42030e39d3aebfccc9583` - ID=1182699495 status=complete `undefined` - ID=1182699498 status=loading `undefined` **Worker is Simulated:** `false` **Exception:** `error log is working ("Error: error log is working\n at chrome-extension://jklfcpboamajpiikgkbjcnnnnooefbhh/generated/troubleshooting.js:1:5422")` **Exception in Promise:** `async error log is working ("Error: async error log is working\n at chrome-extension://jklfcpboamajpiikgkbjcnnnnooefbhh/generated/troubleshooting.js:1:5379\n at chrome-extension://jklfcpboamajpiikgkbjcnnnnooefbhh/generated/troubleshooting.js:1:5419")`补充说明
edge版本号为123.0.2420.97 (正式版本) (64 位) 图1是正常工作时的情形;图2是重启浏览器后打开同一个视频的情形。