Aktualisierung von Erweiterungen für Firefox 7
Dieser Artikel bietet Tipps für Add-on-Entwickler, die ihre Erweiterungen aktualisieren möchten, um mit Firefox 7 zu funktionieren. Glücklicherweise sind die meisten Änderungen in diesem Release relativ geringfügig, und nur wenige Add-ons sollten bedeutende Änderungen benötigen, um in Firefox 7 zu funktionieren.
Hinweis: Eine vollständige Liste der entwicklerbezogenen Änderungen in Firefox 7 finden Sie unter Firefox 7 für Entwickler.
Wie immer müssen Sie alle binären Komponenten neu kompilieren, um sie mit Firefox 7 kompatibel zu machen.
XPCOM-Änderungen, die sich auf die Kompatibilität auswirken
Die meisten Änderungen in diesem Release sind das Entfernen von XPCOM-Schnittstellen oder das Entfernen spezifischer, veralteter APIs aus Schnittstellen.
Entfernte Schnittstellen
Die folgenden Schnittstellen wurden entfernt und werden wahrscheinlich Auswirkungen auf Erweiterungsentwickler haben:
nsIDOM3Node
nsIDOM3TypeInfo
schemaTypeInfo
nsIDOMNSDocument
nsIDOMDocumentStyle
Eine vollständige Liste der entfernten Schnittstellen finden Sie im Abschnitt über Entfernte Schnittstellen von Firefox 7 für Entwickler.
Geänderte Methoden
Einige Schnittstellen haben Methoden, die geändert wurden:
-
Diese wurden geändert, um Firefox Sync besser zu unterstützen, indem ein neuer GUID-Parameter zu mehreren ihrer Methoden hinzugefügt wurde. JavaScript-basierter Code sollte keine Änderungen benötigen, da dies nur die Hinzufügung eines neuen, optionalen Parameters ist. Binäre Komponenten müssen jedoch aktualisiert werden, um den neuen Parameter zu berücksichtigen.
nsIDOMFile
-
Eine Reihe von nicht standardmäßigen Methoden wurden aus dieser Schnittstelle entfernt. Dies betrifft die Methoden
File.getDataAsUrl()
undFile.getAsBinary()
desFile
-Objekts. Diese Funktionalität findet sich jedoch jetzt im standardisiertenFileReader
-Objekt.
Weitere bemerkenswerte Änderungen
Diese Änderungen werden sich nicht auf die Kompatibilität auswirken (wir haben nicht gescherzt, als wir sagten, dass es in diesem Release nicht viele Änderungen gibt, die dies tun), aber sie fügen Funktionen hinzu, die leicht genutzt werden können und möglicherweise von besonderem Nutzen für Sie sind.
Entladen von JavaScript-Code-Modulen
Die neue Methode Components.utils.unload()
ermöglicht es Ihnen, zuvor durch Aufruf von Components.utils.load()
geladene JavaScript-Code-Module zu entladen. Dies kann besonders nützlich für Neustart-lose (bootstrap) Erweiterungen sein, damit Sie eine alte Version eines Code-Moduls entladen können, wenn eine neue Version Ihres Add-ons installiert wird.
Inline-Einstellungen
Sie können jetzt Präferenz-Optionen inline im Add-on-Manager-Fenster integrieren, was es Benutzern ermöglicht, Ihr Add-on zu konfigurieren, ohne ein separates Präferenz-Dialogfeld öffnen zu müssen. Es gibt Einschränkungen, welche Arten von Konfigurationskontrollen bereitgestellt werden können, aber dies ist dennoch sehr hilfreich — und es funktioniert mit Neustart-losen (bootstrap) Erweiterungen.