更新使用Windows注册表安装的未列出的Firefox WebExtension无效

更新使用Windows注册表安装的未列出的Firefox WebExtension无效,firefox,firefox-addon,Firefox,Firefox Addon,如前所述,我一直在尝试使用Windows注册表分发Firefox WebExtension。但是,当尝试更新扩展时,它似乎不起作用 扩展名的清单指向my update.json文件: "applications": { "gecko": { "id": "extensionTest@extension.com", "update_url": "https://cooldomain.com/update.json", } } 我的update.js

如前所述,我一直在尝试使用Windows注册表分发Firefox WebExtension。但是,当尝试更新扩展时,它似乎不起作用

扩展名的清单指向my update.json文件:

"applications": {
    "gecko": {
        "id": "extensionTest@extension.com",
        "update_url": "https://cooldomain.com/update.json",
    }
}
我的update.json文件指向一个新版本:

{
    "addons": {
        "extensionTest@extension.com": {
            "updates": [{
                "version": "2.5.6",
                "update_link": "https://cooldomain.com/extensionTest-2.5.6-an%2Bfx.xpi"
            }]
        }
    }
}

检查浏览器控制台,它确实会获取update.json文件,然后。。。什么也没发生。有没有办法在Firefox中检查更新过程中发生了什么错误?

使用Windows注册表安装的加载项不受Mozilla更新过程的限制。如果您使用Windows注册表进行安装,Mozilla假定您的应用程序将处理所有更新,即不是Firefox。当使用Windows注册表或从单个位置运行扩展而不是复制到每个配置文件时,Firefox不会更新扩展

Firefox按设计运行。因此,没有错误


有关更多信息,请参见:

ok,这稍微超出了问题的范围,但是链接的答案是否适用于webextensions而不是XUL?因为在Mozilla的文档中,他们指定通过文件夹安装扩展不会导致自动更新,所以他们没有为注册表部署指定它,这就是为什么我认为这是部署具有自动更新功能的未列出的扩展的有效方法。Firefox处理更新WebExtensions的方式与处理遗留扩展的方式不同。这样做只不过是对已经按预期工作的东西的额外工作。回复:自动更新:答案有点复杂。一般来说,如果扩展在多个配置文件中运行(如果安装位置存在),那么Firefox不会自动更新。如果扩展文件从最初安装到Firefox发行版的位置复制到每个配置文件的扩展目录中,然后从那里运行,那么Firefox将根据该配置文件中的设置自动更新每个副本。因此,如果我理解正确,使用“\Mozilla\Firefox\Profiles*”上的概要文件目录将扩展复制到现有安装应该将其安装到该概要文件并启用自动更新,对吗?如果您是说在Windows上,概要文件目录中的扩展文件目录是您可以放置它的位置之一。如果您是以管理员权限进行此操作,您还可以将其放在Firefox安装目录中的一个目录中,Firefox会将其复制到每个配置文件中。这真的太复杂了,在评论中找不到像样的答案。