定义 firefox WebExtensions 选项页面时出错

Error when defining a firefox WebExtensions options page

我目前正在使用新的 WebExtensions API 为 Firefox 开发一个相当简单的附加组件。一切都很好,直到我尝试在清单文件中定义 options_ui 。设置后,加载扩展会导致以下错误:

There was an error during installation: getURL may not be called before an id or uuid has been set.

完整清单:

{
  "manifest_version": 2,
  "name": "MyExtension",
  "version": "1.0",
  "description": "...",
  "icons": {
    "48": "icons/48.png",
    "96": "icons/96.png"
  },
  "permissions": [
    "storage",
    "notifications",
    "*://*.example.com/"
  ],
  "browser_action": {
    "default_icon": "icons/32.png",
    "default_title": "MyExtension",
    "default_popup": "popup.html"
  },
  "options_ui": {
    "page": "options.html"
  },
  "background": {
    "scripts": [ "background.js" ]
  }
}

如果 options_ui 未设置,问题 不会 发生,并且扩展按预期工作,当然,除了缺少选项页面。

此错误的来源可能是什么?为什么只有 options_ui 才会发生? browser_action.default_popup 也有一个 URL,而且有效。

提前致谢。

这显然是 known bug。现在的解决方法是手动设置 applications.gecko.id

"applications": {
  "gecko": {
    "id": "my-extension@example.com"
  }
}