Chrome 扩展清单中的默认图标

Default Icons in manifest for Chrome Extension

我的清单中有这段代码:

"browser_action": {
  "default_icon": "icon.png",
  "default_popup": "popup.html",
  "default_icon": {
      "16": "images/16x16.png",
      "48": "images/48x48.png",
      "128": "images/128x128.png"
  }  
},

直到今天它都运行良好,现在我收到 'duplicate key' 错误。 我知道 default_icon 有两个条目——一个用于声明单个图标的旧方法,一个用于声明特定大小的新方法——但是直到现在上传新包时它都没有引起问题.有什么改变吗? 如果我删除第一个声明,会导致什么问题?

更新: 现在我可以上传 zip 文件时遇到错误,但发布失败 'Internal Publish Error'。当我第一次上传 zip 时,我确实收到了警告 'Invalid Manifest Content' 但没有其他详细信息。直到最近,所有这一切都在起作用。这是我的清单:

{
  "web_accessible_resources": [
  "files/*",
  "js/languages.json"
 ],

 "name": "Workspace Manager",
 "version": "0.962",
 "manifest_version": 2,
 "short_name": "Workspace Tab Manager extension.",
 "description": "Tab Manager and Productivity Extension - save tabs as workspaces and revisit them in the future",

  "icons": { 
    "16": "images/16x16.png",
    "48": "images/48x48.png",
    "128": "images/128x128.png" 
  },

 "background": {
   "scripts": ["background.js"],
   "persistent": false
 },

 "browser_action": {
   "default_icon": {
     "16": "images/16x16.png",
     "48": "images/48x48.png",
     "128": "images/128x128.png"
   },
   "default_popup": "popup.html"
 },

 "permissions": [
   "tabs",
   "storage"
 ],

 "content_security_policy": "script-src 'self' https://ajax.googleapis.com https://ssl.google-analytics.com https://www.googletagmanager.com; object-src 'self'"

 }

事实证明不再允许重复键。要修复它,您不仅需要删除其中一个重复项(就像我所做的那样),还需要完全取消发布您的扩展然后重新发布。

不清楚取消发布时会发生什么。从本质上讲,您的扩展将从 Webstore 中消失,并且当您重新发布时,需要比平时更长的时间来审查它。 (与正常的几个小时相比,大约需要 2 天)。届时它会显示 'pending',但当它获得批准时,您商店中的所有内容都将恢复,就好像什么都没发生过一样。