2012-04-14 10 views
1

Mein Ziel ist sehr einfach: Wenn der Benutzer die Erweiterung installiert, öffnen Sie die Optionen-Seite.Wie kann eine Google Chrome-Erweiterung ihren eigenen Hintergrundprozess beenden?

Die einzige Möglichkeit, wie ich das tun kann, ist eine Hintergrundseite zu erstellen und auf dieser Seite nach localStorage.setup zu suchen. Wenn es nicht vorhanden ist, setzen Sie es auf True und öffnen Sie die Optionen-Seite. Dieser Ansatz funktioniert, aber abgesehen davon, dass er verschlungen ist, ist er ineffizient. Die Hintergrundseite wird nicht nur jedes Mal geladen, wenn der Benutzer den Browser öffnet, sondern wird ständig im Hintergrund ausgeführt.

Gibt es eine Möglichkeit zu sagen, Chrom die Hintergrundseite ist fertig, und sollte beendet werden? Oder gibt es eine Möglichkeit, die Hintergrundseite einer Erweiterung zu verhindern, dass sie in Zukunft geladen wird? Oder gibt es einen besseren Weg, mein Problem zu lösen?

+3

Haben Sie versucht, 'window.close()' auf der Hintergrundseite auszuführen? – abraham

+0

Nun, das war einfach. Nein, hatte ich nicht, und es funktioniert perfekt. Ich hoffe jedoch immer noch, dass es einen eleganteren Weg gibt, dies zu tun. –

+0

Versuchen Sie, einen Fehler zu werfen, sollte es beendet werden. – noob

Antwort

3

Mit transient background pages wird die Hintergrundseite automatisch beendet, sobald der gesamte Code beendet ist. Diese Funktion wird in einer zukünftigen Chrome-Version enthalten sein, aber da sie noch aktiv entwickelt wird, gibt es noch keine Dokumentation dafür.

Verwandte Themen