Closed ryakuia closed 6 years ago
大概说一下隐私模式无效的原因:
Firefox中,隐私模式的窗口不能访问正常窗口的 window
。所以 browser.runtime.getBackgroundScript
就挂了,但是仍然可以通过 sendMessage
来进行简单的通信。
可以通过改 manifest 在隐私模式下单独启动一个 Background Script,这两个 Background Script 之间的 localStorage 不互通,但是仍然可以用 browser.storage
。
另外扩展ID不改的话没影响的吧?
emmmmmmm感谢提出问题,确实没有考虑隐私模式中可能会出现的问题。但是特别特别想在重新整理代码后再折腾了。我会先考虑把功能在隐私模式下先砍了做好文字提示。
另外扩展ID不改的话没影响的吧?
强迫症患者表示ID不改不能忍(虽然……一点影响没有) (xmcp直接来了卧槽
顺便提醒一下https://bilihelper.guguke.net/ 要改了
您所使用的浏览器可能不支持 Chrome 扩展, 建议您下载并安装最新版 Google Chrome 浏览器.
至少也得改成 您正在使用 Firefox,请 前往AMO安装
1.1.3版本开始兼容隐身模式
系统信息(然而不是系统的原因,)
UA:Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0 Win 10,Firefox 原版 60.0.1 x64 ,助手版本0.9.8
前述(是一段废话,但最好读一下)
最近看到助手上AMO了,于是用了一下,发现一些问题。(原本准备微博反馈的,但明显这里更好) 在Chrome上,扩展默认在隐私模式不能使用,必须手动允许。相比之下,Firefox并不需要。Chrome这么做是考虑到隐私,而Firefox不需要,一是因为AMO严格的审核,二是Firefox隐私模式对扩展有一定的限制,这也是适配问题发生的原因之一(还有一个原因是即使Cr和Fx的扩展基本兼容,但仍然有细微的差别)。
问题截图(在隐私模式下)
问题描述(在隐私模式下)
ext-menus.js
NetUtil.jsm
background.js
微小的建议
{38b645a8-9dd4-45b9-a6d3-6828f54fdbe5}
一看就是从Chrome上移植来没做好适配的(一般情况下扩展ID是example@example.com
),应当去MDN上多了解一些Firefox扩展的不同之处最后说一句:两位开发者辛苦了!