【问题标题】:Installing Chrome extension programmatically以编程方式安装 Chrome 扩展程序
【发布时间】:2013-12-30 20:12:46
【问题描述】:

我知道这个问题已经被问到了很多,我都阅读了它们,但找不到与我的问题相关的任何内容,所以再次询问。 我做了一个简单的 chrome 扩展。还使用 chrome 将其打包为 crx。 我想使用 nsis 或 C++ 安装程序以编程方式安装它。

从这里得到一些帮助http://www.chromium.org/administrators/pre-installed-extensions

但我不确定如何获取所使用的扩展程序的 ID。 由于同一扩展程序的 ID 在不同机器上的 chrome 上是不同的,因此一个脚本将无法工作。 注册表方法也对我不起作用。

那么诀窍是什么?

【问题讨论】:

    标签: google-chrome google-chrome-extension nsis


    【解决方案1】:

    打包扩展时,您还会获得一个私钥(在.pem 文件中)。扩展 ID 直接派生自此文件(另请参阅 this answer)。

    获取私钥和​​扩展 ID 后,您可以通过填充清单文件中的 "key" 字段来锁定扩展 ID。

    在设计安装程序时,请记住 Google is trying really hard 使开发人员很难(如果不是不可能的话)安装不在 Chrome 网上应用店中托管的 Chrome 扩展程序。

    【讨论】:

    • Rob,请注意,Chrome 企业政策是需要店外扩展程序的企业的正确解决方案。此外,您提到的安装限制仅适用于 Windows 上的稳定版和 beta 版。你的答案的最后一段应该包括这些资格。这是开始阅读有关企业政策的更多信息的好地方:support.google.com/chrome/a/answer/188447?hl=en。
    • 您好,Rob,感谢您的帮助。设法为我的扩展获取哈希。我还更新了 manifest.json 文件中的 Key 字段,然后使用首选项文件方法从这里安装它 chromium.org/administrators/pre-installed-extensions ,但仍然无法正常工作。我不知道我还缺少什么。
    • @smilepleeeaz 尝试通过注册表安装 (developer.chrome.com/extensions/…)。如果这两种方法都不起作用,请显示相关文件,以便更轻松地检查您是否有拼写错误或类似情况。
    • @RobW 谢谢。使用注册表方法和首选项方法使我的扩展名列在 chrome 中。但它只是在扩展部分中列出,默认情况下不显示在 chrome 工具栏上。如何使其默认显示在 chrome 工具栏上?这是我的首选。部分textuploader.com/1rkx
    • @smilepleeeaz 据我所知,默认情况下禁用自动安装的扩展程序。也许 sowbug 知道默认激活扩展的方法? Ping 并问他,我会说。
    猜你喜欢
    • 2012-04-30
    • 1970-01-01
    • 2017-05-10
    • 1970-01-01
    • 1970-01-01
    • 2018-03-23
    • 1970-01-01
    • 1970-01-01
    • 2014-06-28
    相关资源
    最近更新 更多