2017-01-19 3 views
0

Ich habe "chrome: // flags/# extensions-on-chrome-urls" aktiviert, mit denen ich Erweiterungen erstellen kann, die auf chrome: // sites ausgeführt werden können. Wenn ich versuche, meine Erweiterung zu entpacken, schlägt es jedoch mit der Fehlermeldung fehl: "Ungültiger Wert für 'content_scripts [0] .matches [0]': Ungültiges Schema." Ich glaube nicht, dass meine script.js ein Problem ist, da das Entpacken nicht fehlschlägt, wenn ich den Teil "chrome: // extensions" durch eine HTTP- oder HTTPS-Site ersetze. Jede Hilfe würde sehr geschätzt werden, weiß jemand eine Lösung?chrome: // Ungültiges Schema

manifest.json:

{ 
    "name": "Does something on chrome://extensions", 
    "version": "1.2", 
    "description": "Read the name", 
    "manifest_version": 2, 
    "browser_action": { 
    "default_title": "Ext", 
    "default_popup": "popup.html" 
    }, 
    "content_scripts": [ { 
    "matches": ["chrome://extensions"], 
    "js": ["script.js"] 
    } ] 
} 

Antwort

4

Hinweis: Dies ist eine nicht dokumentierte Funktion und nicht in der Zukunft ohne Vorwarnung.

chrome://extensionsist ein ungültiges Übereinstimmungsmuster. Sie können die Pfadkomponente nicht weglassen, also sollten Sie mindestens "chrome://extensions/*" verwenden.

Dies funktioniert jedoch auch nicht, da die tatsächliche URL chrome://chrome/extensions ist. Oder, wenn Sie speziell an der Seite interessiert sind, auf der die Liste der Erweiterungen angezeigt wird, chrome://extensions-frame.

Um ein Content-Skript auf der Seite Erweiterungen ausführen, verwenden --extensions-on-chrome-urls und:

"content_scripts": [{ 
    "matches": ["chrome://chrome/extensions*"], 
    "js": ["script.js"] 
    }] 

oder (den Rahmen, der alle Erweiterungen auflistet, das heißt, was Sie sehen, wenn Sie chrome://extensions besuchen):

"content_scripts": [{ 
    "matches": ["chrome://extensions-frame/*"], 
    "all_frames": true, 
    "js": ["script.js"] 
    }] 
Verwandte Themen