使用其他安装方法

通常,Chrome 用户会通过访问 Chrome 应用商店中的扩展程序详情,然后直接从该页面安装扩展程序来安装扩展程序。不过,在某些情况下,其他安装流程可能更合适。例如:

  • 扩展程序与一些其他软件相关联,每当用户安装该软件时,都应安装该扩展程序。
  • 网络管理员希望在整个组织中安装相同的扩展程序。

对于之前的情形,Google Chrome 支持以下扩展程序安装方法:

这两种方式都支持安装托管在 update_URL 上的扩展程序。在 Windows 和 macOS 上,update_URL 必须指向 Chrome 应用商店。使用这些方法安装扩展程序后,Windows 和 macOS 用户必须通过以下确认对话框启用扩展程序:

外部扩展程序警告

在 Linux 上,偏好设置文件可以指向 Chrome 网上应用店中的扩展程序、外部托管的扩展程序或用户计算机上的 CRX 扩展程序文件。系统不会提示 Linux 用户启用该扩展程序;它会自动安装。

准备工作

从 Chrome 应用商店安装

如果您要分发托管在 Chrome 网上应用店中的扩展程序,则必须先发布该扩展程序。然后,请注意以下几点:

  • 更新网址 - https://clients2.google.com/service/update2/crx。此网址指向 Chrome 应用商店。
  • 扩展程序的 ID - 您可以在扩展程序的 Chrome 应用商店网址中找到此 ID。

Chrome 应用商店商品 ID

从本地 CRX 文件安装

如果您要通过本地文件向 Linux 用户分发扩展程序,则需要打包 CRX 文件,并注意以下信息:

  • 扩展程序 ID - 您可以在扩展程序管理页面 chrome://extensions 中找到此 ID。

  • 扩展程序版本 - 此信息显示在扩展程序管理页面 chrome://extensions 或清单 JSON 文件中。

如何查找扩展程序 ID 和版本

  • CRX 文件的位置 - 这可以是本地目录或网络共享位置。确保文件可供要安装扩展程序的机器使用。

从个人服务器安装

如果您要面向 Linux 用户分发托管在个人服务器上的扩展程序,则需要按照在 Linux 上安装扩展程序中的说明操作,并注意以下信息:

  • 扩展程序 ID - 您可以在扩展程序管理页面 chrome://extensions 中找到此 ID。

  • update_url XML 文件路径 - 此路径必须与清单 JSON 文件中声明的 update_url 字段的路径一致。

以下示例假定版本为 1.0,扩展程序 ID 为 aaabbbcccdddeeefff。

使用偏好设置文件

macOS

  1. 创建一个 JSON 文件,并为其命名为扩展程序 ID。例如:aaabbbcccdddeeefff.json
  2. 将其放置在以下某个文件夹中:

    对于特定用户
    ~USERNAME/Library/Application Support/Google/Chrome/External Extensions/
    面向所有用户
    /Library/Application Support/Google/Chrome/External Extensions/
  3. 使用字段名称“external_update_url”指定更新网址。例如:json { "external_update_url": "https://clients2.google.com/service/update2/crx" }

  4. 保存 JSON 文件。

  5. 启动 Google Chrome 并转到 chrome://extensions;您应该会看到列出的扩展程序。

排查 Mac OS 权限问题

在 macOS 上,只有当文件系统权限阻止无特权用户更改时,系统才会读取所有用户的外部扩展程序文件。如果您在启动 Chrome 时没有看到已安装的外部扩展程序,则外部扩展程序偏好设置文件可能存在权限问题。如需了解是否存在此问题,请按以下步骤操作:

  1. 启动控制台程序。您可以在 /Applications/Utilities/Console 下找到它。
  2. 如果控制台最左侧的图标显示“显示日志列表”,请点击该图标。左侧会显示第二个列。
  3. 点击左侧窗格中的“控制台消息”。
  4. 搜索字符串 Can not read external extensions。如果读取外部扩展程序文件时出现问题,您会看到一条错误消息。查找该错误消息前面的另一条错误消息,其中应该会说明问题。例如,如果您看到以下错误:“Path /Library/Application Support/Google/Chrome is owner of the wrong group”,则您需要使用 chgrp 或“访达”的“获取信息”对话框将目录的群组所有者更改为管理员群组。
  5. 解决问题后,请重启 Chrome。测试外部扩展程序现已安装完毕。一个权限错误可能会导致 Chrome 无法检测到第二个错误。如果未安装外部扩展程序,请重复这些步骤,直到您在 Play 管理中心应用中不再看到错误。

Linux

  1. 使用扩展程序 ID 的名称创建 JSON 文件。例如:aaabbbcccdddeeefff.json
  2. 将其放在以下某个文件夹中:

    • /opt/google/chrome/extensions/
    • /usr/share/google-chrome/extensions/
  3. 下表介绍了通过 Chrome 应用商店、CRX 文件或个人服务器安装扩展程序的方式:

    • 如需安装 Chrome 应用商店扩展程序,请使用字段名称“external_update_url”指定更新网址。例如 json { "external_update_url": "https://clients2.google.com/service/update2/crx" }
    • 如需通过 CRX 文件安装扩展程序,请在“external_crx”中指定位置,并在“external_version”中指定版本。例如 json { "external_crx": "/home/share/extension.crx", "external_version": "1.0" }
    • 如需安装托管在个人服务器上的扩展程序,“external_update_url”字段必须指向 xml 文件,如以下示例所示:json { "external_update_url": "http://myhost.com/mytestextension/updates.xml" }
  4. 保存 JSON 文件。

  5. 启动 Google Chrome 并转到 chrome://extensions;您应该会看到列出的扩展程序。

支持的语言区域

如果您想仅为部分浏览器语言区域安装扩展程序,可以在字段名称“supported_locales”中列出受支持的语言区域。语言区域可以指定父级语言区域(例如“en”),在这种情况下,系统会为所有英语语言区域(例如“en-US”“en-GB”等)安装该扩展程序。如果选择的浏览器语言区域不受该扩展程序支持,系统会卸载外部扩展程序。如果缺少“supported_locales”列表,系统将针对任何语言区域安装扩展程序。例如:

{
  "external_update_url": "https://clients2.google.com/service/update2/crx",
  "supported_locales": [ "en", "fr", "de" ]
}

使用 Windows 注册表

  1. 在注册表中找到或创建以下键:

    32 位 Windows
    HKEY_LOCAL_MACHINE\Software\Google\Chrome\Extensions
    64 位 Windows
    HKEY_LOCAL_MACHINE\Software\Wow6432Node\Google\Chrome\Extensions
  2. Extensions 键下创建一个新键(文件夹),其名称与扩展程序的 ID 相同。例如:aaabbbcccdddeeefff

  3. 在扩展程序键中,创建一个“update_url”属性,并将其设置为以下值:json { "update_url": "https://clients2.google.com/service/update2/crx" }

  4. 启动 Chrome。

  5. 前往 chrome://extensions;您应该会看到该扩展程序在列表中。

更新和卸载

Google Chrome 会在每次启动时扫描偏好设置和注册表中的元数据条目,并对托管在 Chrome 应用商店中的已安装外部扩展程序进行任何必要的更改。

如需将本地 CRX 文件扩展程序更新为新版本,请更新该文件,然后更新偏好设置 JSON 文件中的版本。

如需卸载扩展程序(例如,如果软件已卸载),请从注册表中移除您的偏好设置文件(例如 aaabbbcccdddeeefff.json)或元数据。

常见问题解答

本部分解答了与外部扩展程序相关的常见问题。

Google Chrome 是否仍支持“预安装”功能?

可以,但只能通过 Chrome 应用商店 update_url 安装,而不能通过本地 CRX 路径安装。如需了解详情,请参阅应用和扩展程序政策

使用偏好设置文件进行安装时,有哪些常见错误?

  • 未指定与 CRX 文件中列出的 ID 或版本相同的 ID 或版本。
  • JSON 文件(例如 aaabbbcccdddeeefff.json)位于错误的位置,或者指定的 ID 与扩展程序 ID 不匹配。
  • JSON 文件中存在语法错误(忘记使用英文逗号分隔条目,或在某个位置留下尾随英文逗号)。
  • JSON 文件条目指向 CRX 文件的错误路径(或指定了路径但没有文件名)
  • UNC 路径中的反斜杠不会转义。例如,"\\server\share\file" 是错误的;应为 "\\\\server\\share\\extension"
  • 网络共享的权限问题。

使用注册表进行安装时,有哪些常见错误?

  • 未指定与 Chrome 应用商店中列出的 ID 相同的 ID。
  • 密钥在注册表中的错误位置创建。
  • 注册表条目指向 Chrome 应用商店中 CRX 文件的错误路径。
  • 网络共享存在权限问题。
  • 并非所有 Chrome 实例都会关闭。设置注册表后,请尝试重新启动计算机。

如果用户卸载扩展程序,会怎么样?

如果用户通过界面卸载扩展程序,系统将不再在每次启动时安装或更新该扩展程序。也就是说,外部扩展程序已被列入屏蔽名单。

如何移除屏蔽名单?

如果用户卸载您的扩展程序,您应尊重用户的决定。不过,如果您(开发者)不小心通过界面卸载了扩展程序,则可以通过以下方式移除屏蔽名单标记:通过界面正常安装扩展程序,然后将其卸载。