Manifest aktualisieren

V2-Manifest in ein V3-Manifest konvertieren

Die Datei manifest.json hat 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.

Manifest-Versionsnummer ä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" dazu führen, dass Erweiterungen von Websites und Angreifern erkannt wurden, 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. Statt wie bisher eine Liste von Dateien bereitzustellen, stellen Sie jetzt ein Array von Objekten bereit, von denen jedes eine Reihe von Ressourcen einer Gruppe von URLs oder Erweiterungs-IDs zuordnet.

Im folgenden Beispiel werden über das Web zugängliche Ressourcen von Manifest V2 und Manifest V3 verglichen. In Manifest V2 waren die angegebenen Ressourcen standardmäßig für alle Websites zugänglich. Im unten gezeigten Manifest V3-Code sind diese Ressourcen nur für https://example.com verfügbar. Nur bestimmte Bilder sind für alle Websites verfügbar.

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/*"
      ]
    }
  ],
  ...
}