我们为团队成员创建了一个 Chrome 扩展程序,并且希望自行托管它。
我了解非网络商店安装政策,并且我觉得我已正确设置此政策,但它不起作用。
这是我所拥有的:
我使用更新 URL 和扩展 ID key 设置 list ,如下所示:
{
"update_url": "https://ourownserver.com/extensions/updates.xml",
"key":"obljkonioibfihfjbaiidbobmckpkned",
....
}
我像这样创建了updates.xml
:
<gupdate xmlns="http://www.google.com/update2/response" protocol="2.0">
<app appid="obljkonioibfihfjbaiidbobmckpkned">
<updatecheck codebase="some-extension.crx" version="3.6"/>
</app>
</gupdate>
我使用 chrome://extensions
打包 .crx 和 .pem 文件,并将它们全部放入 https://ourownserver.com/extensions/
中,如下所示这个:
我使用 regedit 添加 ExtensionInstallWhitelist
和 ExtensionInstallSources
在HKEY_LOCAL_MACHINE
下如下:
然后我关闭了 Chrome 并重新打开它
完成所有这些操作后,我希望访问 https://ourownserver.com/extensions/extensionName.crx
将安装该扩展并将其启用。但是,如果我去 https://ourownserver.com/extensions/extensionName.crx
我仍然得到:
在扩展选项卡上,它已安装但已禁用,并显示以下消息:
我认为我没有正确添加注册表项,但我无法找到更详细的演练来确定。
我在这里做错了什么?
最佳答案
您的更新 XML 需要包含扩展 CRX 的绝对路径,而不是相对路径。例如:
<gupdate xmlns="http://www.google.com/update2/response" protocol="2.0">
<app appid="obljkonioibfihfjbaiidbobmckpkned">
<updatecheck codebase="https://ourownserver.com/extensions/some-extension.crx" version="3.6"/>
</app>
</gupdate>
关于google-chrome - 安装自托管 Chrome 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36440206/