Manifest aktualisieren

V2-Manifest in ein V3-Manifest konvertieren

Die manifest.json-Datei erfordert für Manifest V3 ein etwas anderes Format als für Manifest V2. Auf dieser Seite werden Änderungen beschrieben, die sich nur auf die manifest.json-Datei auswirken. Viele der Änderungen an Scripts und Seiten erfordern jedoch auch Änderungen am Manifest. Diese Änderungen werden in den Migrationsaufgaben berücksichtigt, die sie erfordern.

Manifestversionsnummer ändern

Ändern Sie den Wert des Felds "manifest_version" von 2 in 3.

Manifest V2
{
  ...
  "manifest_version": 2
  ...
}
Manifest V3
{
  ...
  "manifest_version": 3
  ...
}

Hostberechtigungen aktualisieren

Hostberechtigungen in Manifest V3 sind ein separates Feld. Sie werden nicht in "permissions" oder "optional_permissions" angegeben.

Inhaltsscripts bleiben unter "content_scripts.matches". Informationen zu "content_scripts.matches" finden Sie unter Mithilfe statischer Deklarationen einfügen.

Manifest V2
{
  ...
  "permissions": [
    "tabs",
    "bookmarks",
    "https://www.blogger.com/",
  ],
  "optional_permissions": [
    "unlimitedStorage",
    "*://*/*",
  ]
  ...
}
Manifest V3
{
  ...
  "permissions": [
    "tabs",
    "bookmarks"
  ],
  "optional_permissions": [
    "unlimitedStorage"
  ],
  "host_permissions": [
    "https://www.blogger.com/",
  ],
  "optional_host_permissions": [
    "*://*/*",
  ]
  ...
}

Webzugängliche Ressourcen aktualisieren

Webzugängliche Ressourcen sind Dateien in einer Erweiterung, auf die über Webseiten oder andere Erweiterungen zugegriffen werden kann. In Manifest V2 konnte das Feld "web_accessible_resources" von Websites und Angreifern erkannt werden, wenn die Erweiterung Ressourcen freigab. Dies bot Möglichkeiten für Fingerprinting oder unbeabsichtigten Ressourcenzugriff.

Mit Manifest V3 wird die Sichtbarkeit eingeschränkt, indem festgelegt wird, welche Websites und Erweiterungen auf Ressourcen in Ihrer Erweiterung zugreifen können. Anstatt wie bisher eine Liste von Dateien anzugeben, geben Sie jetzt ein Array von Objekten an, in dem jeweils eine Reihe von Ressourcen einer Reihe von URLs oder Erweiterungs-IDs zugeordnet wird.

Im folgenden Beispiel werden webzugängliche Ressourcen in Manifest V2 und Manifest V3 verglichen. In Manifest V2 waren die angegebenen Ressourcen standardmäßig für alle Websites zugänglich. Im unten stehenden Manifest V3-Code sind diese Ressourcen nur für https://example.com verfügbar, während nur bestimmte Bilder für alle Websites verfügbar sind.

Weitere Informationen finden Sie unter Webzugriffsfähige Ressourcen und Übereinstimmungsmuster.

Manifest V2
{
  ...
  "web_accessible_resources": [
    "images/*",
    "style/extension.css",
    "script/extension.js"
  ],
  ...
}
Manifest V3
{
  ...
    "web_accessible_resources": [
    {
      "resources": [
        "images/*"
      ],
      "matches": [
        "*://*/*"
      ]
    },
    {
      "resources": [
        "style/extension.css",
        "script/extension.js"
      ],
      "matches": [
        "https://example.com/*"
      ]
    }
  ],
  ...
}