2017-08-23 4 views
0

Ich habe gestern begonnen, meine erste Firefox Web Extension auf der Version 55.0.2 zu entwickeln. Ich wollte verschiedene Sprachen für diese Erweiterung hinzufügen, also habe ich auf der offiziellen Website über dieses Thema gelesen: https://developer.mozilla.org/fr/Add-ons/WebExtensions/Internationalization.Firefox Web Extension Internationalisierung Fehler

Die Dinge laufen jedoch nicht so, wie sie sollten, denn jetzt, wenn ich versuche, meine App mit dem Debugging zu laden, erscheint die Fehlermeldung "Es gab einen Fehler während der Installation: Die Erweiterung ist ungültig".

Ich habe ein wenig gesucht, was dieses Problem verursachen könnte und was ich fand, ist völlig merkwürdig. Immer wenn ich einen Ordner wie "en" oder "fr" in meinem _locales-Ordner habe, zeigt Firefox mir diese Fehlermeldung immer wieder an.

Ich habe versucht, ein Standardgebietsschema in meinem manifest.json hinzuzufügen, um es zu beheben, aber kein Glück damit, es funktioniert nicht. Ich habe versucht, meine messages.json so einfach wie möglich zu machen, indem ich nur den Erweiterungsnamen ändere & Erweiterung Beschreibung, kein Glück.

Aus einem Grund, den ich nicht verstehe, verhindern diese Unterordner, dass ich verschiedene Sprachen hinzufüge.

Hier ist meine manifest.json:

{ 
    "manifest_version": 2, 
    "default_locale": "en", 
    "name": "__MSG_extensionName__", 
    "description": "__MSG_extensionDescription__", 
    "version": "1.0", 
    "applications": { 
     "gecko":{ 

     } 
    }, 

    "permissions": [ 
     "contextMenus", 
     "activeTab" 
    ], 

    "background": { 
     "scripts": ["ddo.js"] 
    }, 

    "browser_action": { 
     "default_title": "Download Destination Organizer" 
    } 
} 

Hier ist meine messages.json in meinem "en" Unterordner innerhalb _locales:

{ 
    "extensionName": { 
    "message": "DDO", 
    "description": "Name of the extension." 
    }, 

    "extensionDescription": { 
    "message": "Insert description here", 
    "description": "Description of the extension." 
    } 

} 

Hier ist meine messages.json in meinem "fr" Unterordner innerhalb _locales:

{ 
    "extensionName": { 
    "message": "DDO", 
    "description": "Name of the extension." 
    }, 

    "extensionDescription": { 
    "message": "Insérer la description ici.", 
    "description": "Description of the extension." 
    } 

} 
+0

Wie Installierst du die Erweiterung? Verwenden Sie die Web-Ext-Befehlszeile? – rsommerard

+0

Ich benutze die about: Debugging Seite und lade die App als Temp App. – Ashmore

+0

Sind Sie sicher, dass Sie den Ordner '_locales' gut benannt haben? – rsommerard

Antwort

1

Verwenden offiziellen web-ext Werkzeug aus der Mozilla reposito ry: https://github.com/mozilla/web-ext

Es funktioniert für mich, wenn ich dein Beispiel mit diesem Befehl (auf MacOS) laufen:

web-ext run --firefox

Sie können es auch mit diesem Befehl in firefox Developer Edition ausgeführt wird:

web-ext run --firefox /Applications/FirefoxDeveloperEdition.app/Contents/MacOS/firefox

Darüber hinaus können Sie es mit der ausführlichen Option (-v) laufen, genau zu sehen, wo die fehlerhafte Ausgabe ist:

web-ext run --firefox -v

Hier meine Architektur (ich nichts geändert, die Sie zur Verfügung gestellt, habe ich nur die ddo.js Datei im Manifest beschrieben - die ddo.js-Datei enthält eine console.log):

|- _locales 
| |- en 
| | |- messages.json 
| | 
| |- fr 
| | |- messages.json 
| 
|- ddo.js 
|- manifest.json 
Verwandte Themen