browser_specific_settings

类型 Object
必填 通常情况下不需要(但请参阅 何时需要扩展 ID?)。如果无法确定扩展 ID,则为必需项,请参阅 browser_specific_settings.gecko.id
示例
json
"browser_specific_settings": {
  "gecko": {
    "id": "@addon-example",
    "strict_min_version": "58.0"
  }
}

描述

browser_specific_settings 键包含特定于某个主机应用程序的键。

Firefox (Gecko) 属性

Firefox 在这些子键中存储浏览器特定设置

  • gecko 用于桌面版 Firefox。
  • gecko_android 用于 Android 版 Firefox。

gecko 子键支持以下属性

id

扩展 ID。提供时,此属性必须小于等于 80 个字符。请参阅 扩展和扩展 ID 以确定何时指定 ID。

strict_min_version

支持的最低 Gecko 版本。如果安装或运行扩展的 Firefox 版本低于此版本,则不会安装或运行该扩展。如果未提供,则支持 strict_max_version 之前的所有版本。“*”在此字段中无效。

strict_max_version

支持的最高 Gecko 版本。如果安装或运行扩展的 Firefox 版本高于此版本,则不会安装或运行该扩展。默认为“*”,表示禁用最高版本检查。

update_url

指向 扩展更新清单的链接。请注意,链接必须以“https”开头。此键用于自行管理扩展更新(即,不通过 AMO)。

gecko_android 子键支持以下属性

strict_min_version

支持的 Android 版 Gecko 的最低版本。如果安装或运行扩展的 Firefox for Android 版本低于此版本,则不会安装或运行该扩展。如果未提供,则默认为 gecko.strict_min_version 确定的版本。“*”在此字段中无效。

strict_max_version

支持的 Android 版 Gecko 的最高版本。如果安装或运行扩展的 Firefox 版本高于此版本,则不会安装或运行该扩展。默认为 gecko.strict_max_version 确定的版本。

请参阅 有效的 Gecko 版本列表。

要支持 Firefox for Android 而无需指定版本范围,gecko_android 子键必须是一个空对象,即 "gecko_android": {}。否则,该扩展仅在桌面版 Firefox 上可用。

扩展 ID 格式

扩展 ID 必须是以下之一

  • GUID
  • 格式类似于电子邮件地址的字符串:extensionname@example.org。但是,推荐使用 @string 格式。

后一种格式更容易生成和操作。请注意,此处使用真实的电子邮件地址可能会吸引垃圾邮件。

例如

json
"id": "@extension-name.developer-name"
json
"id": "{daf44bf7-a45e-4450-979c-91cf07434c3d}"

Safari 属性

Safari 在 safari 子键中存储其浏览器特定设置,该子键具有以下属性

strict_min_version

支持的最低 Safari 版本。

strict_max_version

支持的最高 Safari 版本。

Chrome 属性

Chrome 不使用此键,如果它存在于扩展的 manifest.json 文件中,则会忽略它。

示例

包含所有可能键的示例。请注意,大多数扩展会省略 strict_max_versionupdate_url

json
"browser_specific_settings": {
  "gecko": {
    "id": "@addon-example",
    "strict_min_version": "42.0",
    "strict_max_version": "50.*",
    "update_url": "https://example.com/updates.json"
  },
  "safari": {
    "strict_min_version": "14",
    "strict_max_version": "20"
  }
}

浏览器兼容性