3

StumbleUpon ツールバーなど、一部の Firefox 拡張機能をインストールすると、ブラウザーを再起動するとページが開くことに気付きました。

これは、更新ノートを表示し、ユーザーにチュートリアル タイプの情報を提供するのに役立ちます。

インストール後にユーザーが初めてブラウザーを再起動したときに、Firefox アドオンで新しいページを開くにはどうすればよいですか?

4

2 に答える 2

5

より良い方法があるかもしれませんが、私はそれを認識していません...設定システムを使用して、それが最初の実行/更新であるかどうかを追跡できます

設定が存在するかどうかを確認し、存在しない場合はページを開き、現在の拡張機能のバージョン番号で設定を作成します。設定が存在する場合は、現在の拡張機能のバージョン番号と照らし合わせて確認し、それらが異なる場合は、それが更新であると想定してページを開きます。(ページが更新されるたびにページを開くと仮定します)

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.. バージョン チェックでは、本来あるべき != の代わりに == を使用しました

于 2009-06-06T03:48:13.257 に答える
0

私はFirefoxの拡張機能を直接使用したことはありませんが、フラグ(ブール値)を永続メモリに保存する方法に沿って何かを想像します(ただし、ユーザー設定を保存します)。インストール後の初回ブラウザ起動時はフラグが設定されていないので、ヘルプページを表示してフラグを設定します。次にFirefoxを再起動すると、フラグはすでに設定されているため、ヘルプページは開きません。

拡張機能が更新されるたびにページを表示する場合は、ブール値の代わりにバージョンを保存し、起動時に現在のバージョンが保存されているバージョンよりも新しいかどうかを確認します。

于 2009-06-06T03:46:22.977 に答える