--- title: manifest.json slug: Mozilla/Add-ons/WebExtensions/manifest.json tags: - Add-ons - Extensões - WebExtensions translation_of: Mozilla/Add-ons/WebExtensions/manifest.json ---
O ficheiro manifest.json é o único ficheiro que deve ser incluído em extensões que usem APIs de WebExtension.
Com o manifest.json
, é possível especificar metadados sobre a extensão a que pertence, tal como o nome, a versão, e funcionalidades como scripts de background, scripts de conteúdo, e ações de browser.
O manifest.json
é um ficheiro em formato JSON, mas também suporta comentários do tipo "//".
Seguem-se as propriedades que o manifest.json
suporta:
as únicas propriedades obrigatórias são "manifest_version"
, "version"
, e "name"
. "default_locale"
só é obrigatório se existir uma pasta "_locales". Caso contrário, a propriedade não pode existir."browser_specific_settings"
não é compatível com Google Chrome.
É possível aceder ao manifest.json
de uma extensão a partir de um script da mesma, com a função de JavaScript {{WebExtAPIRef("runtime.getManifest()")}}:
browser.runtime.getManifest().version;
{{Compat("webextensions.manifest")}}
Os exemplos seguintes demonstram como funcionam algumas propriedades comuns nos manifest.json.
Nota: Estes exemplos não funcionam se forem simplesmente copiados e colados. As propriedades necessárias são determinadas pelas características de cada extensão
Para ver exemplos completos de extensões, veja a página Exemplos de extensões.
{ "applications": { "gecko": { "id": "addon@example.com", "strict_min_version": "42.0" } }, "background": { "scripts": ["jquery.js", "my-background.js"], "page": "my-background.html" }, "browser_action": { "default_icon": { "19": "button/geo-19.png", "38": "button/geo-38.png" }, "default_title": "Whereami?", "default_popup": "popup/geo.html" }, "commands": { "toggle-feature": { "suggested_key": { "default": "Ctrl+Shift+Y", "linux": "Ctrl+Shift+U" }, "description": "Send a 'toggle-feature' event" } }, "content_security_policy": "script-src 'self' https://example.com; object-src 'self'", "content_scripts": [ { "exclude_matches": ["*://developer.mozilla.org/*"], "matches": ["*://*.mozilla.org/*"], "js": ["borderify.js"] } ], "default_locale": "en", "description": "...", "icons": { "48": "icon.png", "96": "icon@2x.png" }, "manifest_version": 2, "name": "...", "page_action": { "default_icon": { "19": "button/geo-19.png", "38": "button/geo-38.png" }, "default_title": "Whereami?", "default_popup": "popup/geo.html" }, "permissions": ["webNavigation"], "version": "0.1", "web_accessible_resources": ["images/my-image.png"] }
Consulte a tabela de compatibilidade de browsers do manifest.json para saber que browsers suportam cada propriedade do manifest.json
.
{{WebExtAPIRef("permissions")}} JavaScript API