无法识别的清单密钥 'applications'。 Google Chrome 的警告

Unrecognized manifest key 'applications'. warning for Google Chrome

我已经为 Firefox 创建了 Web 扩展,它使用 Chrome 扩展 API。

但是 Firefox 需要 application 键入 manifest.json

https://developer.mozilla.org/en-US/Add-ons/WebExtensions/manifest.json

如果我为 Google Chrome 加载相同的扩展,Chrome 警告为:

There were warnings when trying to install this extension:
Unrecognized manifest key 'applications'.

虽然扩展有效,但我不确定我是否可以将 Firefox Web 扩展发送到 Google Chrome 与此清单文件一起存储。

我可以为 Google Chrome 创建另一个项目,但我想保留一个可以同时用于 Firefox 和 Google Chrome 且没有任何警告的文件夹。

我应该如何在满足 Firefox 要求的同时修复此警告?

您可能想要生成单独的清单文件,即使其他一切都没有改变。毕竟,文档状态:

applications. Only supported in Gecko.

我的建议是一个构建脚本,它可以为每个版本复制文件和正确的清单(或者如果你想要的话,可以动态生成正确的清单)。

运行 68.0b13(64 位),我刚刚删除了 "applications" 密钥和主体

//  "applications": {
//      "gecko": {
//          "strict_min_version": "58.0a1"
//      }
//  },

没有它也能正常工作。

Documentation 说:

Note that the ability to develop and debug WebExtensions that don't include an ID is new in Firefox 48. If you need to use an earlier version of Firefox, then you must use the applications key to set an ID explicitly.

我对此的解释是 >= Firefox 48 不需要 "application" 键。