2009-11-20 7 views
7

Ich entwickle eine Firefox-Erweiterung und möchte ihre Verwendung mit Google Analytics verfolgen, aber ich kann es nicht funktionieren.Google Analytics zum Nachverfolgen der FireFox-Erweiterung verwenden

Ich habe versucht, manuell eine Funktion von ga.js aufrufen, aber das hat aus irgendeinem Grund nicht funktioniert. Es wurde kein Fehler erzeugt, aber es wurden auch keine Daten gesammelt.

Mein letzter Versuch war, eine Website zu haben, die nur das Tracking-Javascript hält und dann innerhalb der Erweiterung in einem iframe mit der konfigurierten URL lädt, so dass es sinnvolle Daten enthält. Auf diese Weise werden die Analysen verbunden, wenn ich diese Webseite mit einem Browser, aber nicht in einer Erweiterung besuche. Ich habe versucht, etwas sichtbares Javascript auf der Site zu setzen und habe bestätigt, dass das Javascript der Site ausgeführt wird. Diese Methode funktioniert auch mit anderen Trackern, aber ich mag ihre Ausgabe nicht und würde Google Analytics bevorzugen.

Irgendwelche Ideen, was sonst könnte ich versuchen, dies zu erreichen?

+1

Wenn Sie im Rahmen Ihrer Erweiterung „zu emulieren einen Browser“ versuchen zu, könnte dies nicht die richtige Richtung. Um alles zu erreichen, was einer echten Website nahekommt, müssen Sie sich aller Code-Ausführungs- und -Ereignisbindungen bewusst sein, die Analytics (innerhalb einer beliebigen Seite) erstellt. Es ist nicht klar, was genau Ihre Erweiterung tut, daher ist es schwer zu sagen, wie Sie das erreichen können. –

+0

Nun, ich brauche nicht wirklich all die speziellen Sachen, ich konstruiere eine URL, die alle Informationen enthält, die ich verfolgen muss und möchte dann ein Ereignis zum Laden einer Seite auf Analysen mit dieser URL auslösen. Vielleicht gibt es etwas über ihre API, die ich vermisse? Gibt es eine Möglichkeit, benutzerdefinierte Ereignisse aus einem beliebigen JavaScript-Code auszulösen? –

Antwort

5

Die Lösung ist Remy Sharp's mini library for tracking bookmarklets and extensions mit Google Analytics zu verwenden. Klappt wunderbar.

Verbrauch ist so einfach wie:

gaTrack('UA-123456', 'yoursite.com', '/js/script.js'); 

Bitte beachte, dass, da es keine Cookies verwenden, gibt es keine Unterscheidung zwischen Seitenzugriffen und Besuchen, oder was das betrifft, zwischen den Besuchen und Besuchern. Aber der Rest der Funktionalität ist ziemlich zuverlässig.

0

Ich glaube nicht, dass das möglich ist. Mit Firefox-Erweiterungen können Sie keine Seiten von anderen Servern laden. Der einzige Weg, an den ich denken kann, ist ein unsichtbarer Iframe, der den Code lädt. Die Pings zu Googles Servern müssen von einer Domäne stammen, die Ihnen gehört. Also denke ich, dass Ihre eigenen Server Seiten jedes Mal bereitstellen müssen, wenn ein Nutzer die Erweiterung lädt, was Ihren Server einfach umbringt und den Zweck von Google, die ganze Arbeit zu erledigen, zunichte macht !! Bitte posten Sie, wenn Sie einen Weg gefunden haben. Chrome-Erweiterungen können einfach nachverfolgt werden.

+1

Äh, Firefox Add-ons können tatsächlich Seiten von anderen Servern laden. Sie können tatsächlich so ziemlich alles machen. – sdwilsh

+0

Obwohl Sie sagen, dass es nicht möglich ist, denke ich, dass das, was Sie hier beschreiben, tatsächlich funktionieren würde. – MatrixFrog

1

Je nachdem, was Sie verfolgen möchten, benötigen Sie möglicherweise Google Analytics nicht. Mozillas Addon.mozilla.org Portal bietet bereits umfassende Tracking- und Nutzungsstatistiken für Addons.

Um zu überprüfen, ob Mozilla bietet, was Sie brauchen, gehen Sie auf Statistics Dashboard und wählen Sie die Statistiken für eines der öffentlich verfügbaren Addons.

+0

Natürlich funktioniert dies nicht für selbst gehostete Addons, und einige Unternehmen möchten möglicherweise alle ihre Daten zusammen haben. –

0

Für Analysen im Haupt/Hintergrund-Skript können Sie diese Lösung verwenden möchten: https://stackoverflow.com/a/17430194/193017

Unter Berufung auf einen Teil der Antwort:

Ich würde vorschlagen, dass Sie bei der neuen Mess einen Blick Protokoll in Universal Analytics:
https://developers.google.com/analytics/devguides/collection/protocol/v1/
Dies ermöglicht Ihnen, XHR POST zu verwenden, um einfach GA-Ereignisse direkt zu senden.
Dies wird viel besser mit Firefox-Erweiterungen koexistieren.
Der Code würde wie folgt aussehen: