我想将一个扩展与我的可执行文件捆绑在一起,如果他们有 chrome 或 firefox,我希望它自动将其添加到用户浏览器中。是否有一个目录可以让我删除包含 chrome 扩展名的 .crx 文件,并且 chrome 会自动使用它?我应该为firefox做什么?
3 回答
如果你想简化一些事情,你可以使用Crossrider并获得一个安装程序,它将在 IE、Firefox 和 Chrome 上安装你的扩展程序。此安装程序也可以在静默模式下运行,因此您可以从可执行文件中运行它而不会中断正常流程。为此,您首先必须打开一个新用户并将您的扩展程序代码复制到 Crossrider(无论如何这可能是一个好主意,因为您的应用程序将拥有一个支持所有浏览器的代码)。
对于铬:
您可以将其放入注册表或将其放入 external-extensions.json 文件 ( %localappdata%/Google/Chrome/Application/chrome_xx.xxx.xxx.xxx/Extensions/
)。
我自己从来没有做过,但它都记录在官方频道上: http ://code.google.com/chrome/extensions/external_extensions.html
还有一种通过 Group-Policy 安装它的方法,但这三种方法都不是跨平台的 AFAIK。
对于火狐:
我不知道。
我的建议是:
- 一定要通过浏览器本身,
- 不要试图偷偷摸摸把它强加给用户
原因如下:
- 浏览器旨在明确明确地征求用户的许可。
- 这是我知道的唯一跨平台方式(而且它已经需要分叉,所以这甚至不是完全跨平台的)。
我只是建议分叉一个浏览器并将扩展的文件或下载 URL 作为参数传递,以便它会自动请求用户的许可并开始安装过程。
例如,只需调用它(在 linux 上,如果google-chrome
在你的 上PATH
):
google-chrome PATH_TO_FOLDER_OR_URL_PREFIX/myextension.xpi
或者:
google-chrome PATH_TO_FOLDER_OR_URL_PREFIX/myextension.crx
或者对于火狐:
firefox PATH_TO_FOLDER_OR_URL_PREFIX/myextension.xpi