如何在manifest.json中指定图标?

时间:2016-02-09 17:18:46

标签: android web-applications google-chrome-extension manifest progressive-web-apps

如何在manifest.json中指定图标?似乎有些人使用数组,有些人使用字典。例如:

  

https://developer.chrome.com/webstore/get_started_simple

"icons": {
   "128": "icon_128.png"
},

但是在这个来源中,他们这样使用它:

  

https://developers.google.com/web/updates/2014/11/Support-for-installable-web-apps-with-webapp-manifest-in-chrome-38-for-Android?hl=en

  "icons": [
    {
      "src": "launcher-icon-2x.png",
      "sizes": "96x96",
      "type": "image/png"
    },
    {
      "src": "launcher-icon-3x.png",
      "sizes": "144x144",
      "type": "image/png"
    },
    {
      "src": "launcher-icon-4x.png",
      "sizes": "192x192",
      "type": "image/png"
    }
  ],

如果我尝试将我的网络应用程序安装为Chrome扩展程序,并且我使用后一种格式,则会出现此错误:

所以我想我需要使用第一种格式。但是,如果我尝试在Android中将我的应用程序安装为渐进式Web应用程序,则需要后续格式...

1 个答案:

答案 0 :(得分:10)

简短的回答是你需要两者。它们是两个不同的清单文件,用于不同的目的并生活在不同的地方。

对于Chrome网上应用店,您将在getting started tutorial之后在计算机上本地创建清单。该清单和图标图像将被添加到zip文件中并上传到商店。

"icons": {
  "128": "icon_128.png"
}

对于installable web apps,您必须创建一个清单文件,将其与图像一起上传到您的网站,然后更新您的HTML页面以链接到您网站上的清单。

  "icons": [
    {
      "src": "launcher-icon-2x.png",
      "sizes": "96x96",
      "type": "image/png"
    },
    {
      "src": "launcher-icon-3x.png",
      "sizes": "144x144",
      "type": "image/png"
    },
    {
      "src": "launcher-icon-4x.png",
      "sizes": "192x192",
      "type": "image/png"
    }
  ]