2009-06-06 8 views
3

Ich bemerkte, dass einige Firefox-Erweiterungen, wenn installiert, öffnet eine Seite, sobald Sie den Browser neu starten, zum Beispiel die StumbleUpon toolbar.Firefox-Erweiterung Öffnen einer Seite auf der Installation

Dies ist nützlich, um Update-Notizen anzuzeigen und dem Benutzer einige Informationen zum Tutorial-Typ zu geben.

Wie gehst du vor, um eine neue Seite in einem Firefox-Add-On zu öffnen, wenn der Benutzer den Browser das erste Mal nach der Installation neu startet?

Antwort

5

Obwohl es vielleicht einen besseren Weg geben, bin ich davon nicht bewusst ... Sie können die Einstellungen System verwenden, um zu verfolgen, ob es sich um eine erste Lauf ist/aktualisieren

Überprüfen Sie, ob die Präferenz besteht, wenn nicht , öffnen Sie die Seite, erstellen Sie das Präfix mit der aktuellen Versionsnummer der Erweiterung. Wenn die Präferenz vorhanden ist, überprüfen Sie sie anhand der aktuellen Versionsnummer der Erweiterung. Wenn sie unterschiedlich sind, nehmen Sie an, dass es sich um ein Update handelt, und öffnen Sie die Seite. (Vorausgesetzt, dass Sie die Seite jedes Mal öffnete sie auch aktualisiert wird)

var prefs = Components.classes["@mozilla.org/preferences-service;1"] 
      .getService(Components.interfaces.nsIPrefService); 
prefs.QueryInterface(Components.interfaces.nsIPrefBranch2); 

if ((prefs.getPrefType("extensions.yourextensionhere.yourprerference") == PREF_INVALID) 
    || (prefs.getCharPref("extensions.yourextensionhere.yourprerference") != this.version)) { 
    //open page and... 
    prefs.setCharPref("extensions.yourextensionhere.yourprerference",this.version) 
} 

EDIT .. Versionsprüfung verwendet == statt! = Wie es sollte

0

Ich habe nicht direkt mit Firefox-Erweiterungen gearbeitet, aber ich würde mir etwas vorstellen, wie ein Flag (boolescher Wert) im persistenten Speicher (wie auch immer Sie Benutzereinstellungen speichern). Wenn der Browser zum ersten Mal nach der Installation gestartet wird, wird das Flag nicht gesetzt. Daher wird die Hilfeseite angezeigt und das Flag gesetzt. Wenn Firefox das nächste Mal neu gestartet wird, wurde die Markierung bereits gesetzt, sodass Sie die Hilfeseite nicht öffnen.

Wenn Sie möchten, dass bei jeder Aktualisierung der Erweiterung eine Seite angezeigt wird, speichern Sie die Version anstelle eines booleschen Werts und überprüfen Sie bei jedem Start, ob die aktuelle Version größer als die gespeicherte Version ist.

Verwandte Themen