manifest.json

Hinweis: Dieser Artikel beschreibt manifest.json für Web-Erweiterungen. Wenn Sie Informationen über manifest.json in PWAs suchen, schauen Sie sich den Artikel zum Web App Manifest an.

Die Datei manifest.json ist die einzige Datei, die jede Erweiterung verwenden muss, die WebExtension-APIs nutzt.

Mit manifest.json geben Sie grundlegende Metadaten über Ihre Erweiterung an, wie den Namen und die Version, und können auch Aspekte der Funktionalität Ihrer Erweiterung angeben (wie Hintergrundskripte, Inhaltsskripte und Browseraktionen).

Es handelt sich um eine im JSON-formatierte Datei mit einer Ausnahme: Sie darf Kommentare im //-Stil enthalten.

Liste der manifest.json-Schlüssel

Dies sind die manifest.json-Schlüssel; diese Schlüssel sind in Manifest V2 und höher verfügbar, sofern nicht anders angegeben:

Hinweise zu manifest.json-Schlüsseln

  • "manifest_version", "version" und "name" sind die einzigen Pflichtschlüssel.
  • "default_locale" muss vorhanden sein, wenn das _locales-Verzeichnis vorhanden ist, und muss andernfalls nicht vorhanden sein.
  • "browser_specific_settings" wird in Google Chrome nicht unterstützt.

Zugriff auf manifest.json-Schlüssel zur Laufzeit

Sie können auf das Manifest Ihrer Erweiterung aus dem JavaScript der Erweiterung zugreifen, indem Sie die Funktion runtime.getManifest() verwenden:

js
browser.runtime.getManifest().version;

Beispiel

Der folgende Block zeigt die grundlegende Syntax für einige gängige Manifest-Schlüssel.

Hinweis: Dies ist nicht als kopierfertiges Beispiel gedacht. Die Auswahl der benötigten Schlüssel hängt von der Erweiterung ab, die Sie entwickeln.

Für vollständige Beispiel-Erweiterungen siehe Beispiel-Erweiterungen.

json
{
  "browser_specific_settings": {
    "gecko": {
      "id": "addon@example.com",
      "strict_min_version": "42.0"
    }
  },

  "background": {
    "scripts": ["jquery.js", "my-background.js"]
  },

  "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",

  "user_scripts": {
    "api_script": "apiscript.js"
  },

  "web_accessible_resources": ["images/my-image.png"]
}

Browser-Kompatibilität

Siehe auch

permissions JavaScript-API