Analytics

Nachdem Sie die Bibliothek zum Projekt hinzugefügt haben, können Sie beliebige Analytics-Methodenaufrufe an beliebigen Stellen in Ihrer App durchführen.

TIPP

Stellen Sie sicher, dass Sie ADBMobile.h in Ihre Klasse importieren.

Mobilanwendungsberichte in Analytics aktivieren

Bevor Sie Code hinzufügen, lassen Sie Ihren Analytics-Administrator Folgendes ausführen, um die Lebenszyklusverfolgung für Mobilanwendungen zu aktivieren. Dadurch wird sichergestellt, dass Ihre Report Suite zu Beginn der Entwicklung Metriken erfassen kann.

  1. Öffnen Sie Admin Tools > Report Suites und wählen Sie Ihre mobile(n) Report Suite(s) aus.

  2. Klicken Sie auf Einstellungen bearbeiten > Mobilverwaltung > Mobilanwendungs-Berichte.

  3. Klicken Sie auf Neueste App-Berichte aktivieren.

    Optional können Sie auch für Hintergrundtreffer auf "Verfolgung mobiler Standorte aktivieren"oder "Legacy-Berichte und Zuordnung aktivieren"klicken.

Lebenszyklusmetriken können jetzt erfasst werden, und Mobilanwendungsberichte werden im Menü Berichte in der Benutzeroberfläche der Marketing-Berichte angezeigt.

Neue Versionen

In regelmäßigen Abständen werden neue Versionen von Mobile Application Berichte veröffentlicht. Neue Versionen werden nicht automatisch auf Ihre Report Suite angewendet. Wiederholen Sie diese Schritte, um die Aktualisierung durchzuführen. Jedes Mal, wenn Sie Ihrer App neue Experience Cloud-Funktionen hinzufügen, sollten Sie diese Schritte wiederholen, um sicherzustellen, dass Sie über die neueste Konfiguration verfügen.

Lebenszyklusmetriken

Um Lebenszyklusmetriken in Ihrer App zu erfassen, fügen Sie Aufrufe hinzu, wenn die Anwendung aktiviert wird, wie in den folgenden Beispielen gezeigt.

WinJS in default.js

app.onactivated = function (args) { 
  if (args.detail.kind === activation.ActivationKind.launch) { 
   ... 
   // launched and resumed stuff  
   ADBMobile.Config.collectLifecycleData(); 
  } 
}; 
app.oncheckpoint = function (args) { 
  ADBMobile.Config.pauseCollectingLifecycleData(); 
}

C# in App.xaml.cs

public App() 
{ 
    this.InitializeComponent(); 
    this.Resuming += OnResuming; 
    this.Suspending += OnSuspending; 
} 
protected override void OnLaunched(LaunchActivatedEventArgs e) 
{   ... 
    ADBMobile.Config.CollectLifecycleData(); 
    ... 
} 
private void OnResuming(object sender, object e) 
{ 
    ... 
    ADBMobile.Config.CollectLifecycleData(); 
    ... 
} 
private void OnSuspending(object sender, SuspendingEventArgs e) 
{ 
    ... 
    ADBMobile.Config.PauseCollectingLifecycleData(); 
    ... 
}

C++/CX in App.xaml.cpp

App::App() 
{ 
 InitializeComponent(); 
 Resuming += ref new EventHandler<Object ^>(this, &App::OnResuming); 
 Suspending += ref new SuspendingEventHandler(this, &App::OnSuspending); 
} 
void App::OnResuming(Object ^sender, Object ^args) 
{ 
 ... 
 ADBMobile::Config::CollectLifecycleData(); 
 ... 
} 
void App::OnSuspending(Object^ sender, SuspendingEventArgs^ e) 
{ 
 ... 
 ADBMobile::Config::PauseCollectingLifecycleData(); 
 ... 
} 
void App::OnLaunched(Windows::ApplicationModel::Activation::LaunchActivatedEventArgs^ e) 
{ 
 ... 
 ADBMobile::Config::CollectLifecycleData(); 
 ... 
}

Wenn die Anwendung in derselben Sitzung zweimal aufgerufen CollectLifecycleData() wird, meldet sie bei jedem Aufruf nach dem ersten Absturz einen Absturz. Das SDK setzt beim Beenden der Anwendung ein Flag, das auf einen erfolgreichen Beenden hinweist. Wenn dieses Flag nicht gesetzt ist, CollectLifecyleData() wird ein Absturz gemeldet.

Events, Props und eVars

Wenn Sie sich die SDK-Methodenangesehen haben, fragen Sie sich wahrscheinlich, wo Sie Ereignis, eVars, Props, Erben und Listen festlegen können. In Version 4 können Sie diese Variablentypen nicht mehr direkt in Ihrer App zuweisen. Stattdessen verwendet das SDK Kontextdaten und Verarbeitungsregeln, um Ihre App-Daten Analytics-Variablen für den Berichte zuzuordnen.

Verarbeitungsregeln bieten mehrere Vorteile:

  • Sie können Ihre Datenzuordnung ändern, ohne eine Aktualisierung an den App Store zu senden.
  • Sie können aussagekräftige Namen für Daten verwenden, anstatt Variablen festzulegen, die für eine Report Suite spezifisch sind.
  • Das Senden zusätzlicher Daten hat kaum Auswirkungen. Diese Werte werden erst dann in Berichten angezeigt, wenn sie mithilfe von Verarbeitungsregeln zugeordnet werden.

Alle Werte, die Sie direkt Variablen zuweisen, sollten stattdessen den Kontextdaten hinzugefügt werden.

Verarbeitungsregeln

Verarbeitungsregeln werden verwendet, um die Daten, die Sie in Kontextdatenvariablen senden, zu Berichten in "evars", "props"und andere Variablen zu kopieren.

Schulung zu Verarbeitungsregeln anlässlich des Gipfeltreffens 2013

Hilfe zu Verarbeitungsregeln

Berechtigung zur Verwendung von Verarbeitungsregeln erhalten

Es wird empfohlen, Kontextdatenvariablen mithilfe von "Namensräumen"zu gruppieren, da dies eine logische Reihenfolge gewährleistet. Wenn Sie beispielsweise Informationen zu einem Produkt erfassen möchten, können Sie die folgenden Variablen definieren:

"product.type":"hat" 
"product.team":"mariners" 
"product.color":"blue"

Kontextdatenvariablen werden in der Benutzeroberfläche der Verarbeitungsregeln alphabetisch sortiert, sodass Namensraum schnell Variablen im selben Namensraum anzeigen können.

Außerdem haben wir gehört, dass einige von Ihnen Kontextdatenschlüssel mit der eVar- oder prop-Nummer benennen:

"eVar1":"jimbo"

Dies kann bei der einmaligen Zuordnung in Verarbeitungsregeln etwas einfacher sein, Sie verlieren jedoch die Lesbarkeit während des Debuggens, und zukünftige Code-Aktualisierungen können schwieriger sein. Stattdessen empfehlen wir dringend, aussagekräftige Namen für Schlüssel und Werte zu verwenden:

"username":"jimbo"

Setzen Sie Kontextvariablen, die Zähler-Ereignis definieren, auf den Wert "1":

"logon":"1"

Kontextdatenvariablen, die inkrementierende Ereignis definieren, können den zu inkrementierenden Wert aufweisen:

"levels completed":"6"
TIPP

Adobe behält sich den Namespace a. vor. Abgesehen von dieser Einschränkung müssen Kontextdatenvariablen in Ihrer Firma eindeutig sein, um Kollisionen zu vermeiden.

Variable „products“

Um products das mobile SDK festzulegen, müssen Sie eine spezielle Syntax verwenden. Weitere Informationen finden Sie unter Produktvariable.

(Optional) Offline-Verfolgung aktivieren

Um Treffer zu speichern, wenn das Gerät offline ist, können Sie die Offline-Verfolgung in der Datei mit den SDK-Methoden aktivieren. Achten Sie vor der Aktivierung der Offline-Verfolgung auf die Zeitstempelanforderungen, die in der Konfigurationsdateireferenz beschrieben sind.

Geostandort und Zielpunkte

Mithilfe der geografischen Position können Sie Standortdaten (Breiten-/Längengrad) und vordefinierte Zielpunkte messen. Jeder TrackLocation Aufruf sendet:

  • Breitengrad/Längengrad und POI (wenn innerhalb eines in der ADBMobileConfig.json Konfigurationsdatei definierten POI).

    Diese werden für den automatischen Berichte an mobile Lösungsvariablen übergeben.

  • Entfernung vom Zentrum und Genauigkeit als Kontextdaten weitergegeben.

    Erfassen Sie mithilfe einer Verarbeitungsregel.

So verfolgen Sie einen Ort:

var ADB = ADBMobile; 
ADB.Analytics.trackLocation(37.75345, -122.33207, null);

Wenn der folgende POI in der ADBMobileConfig.json Konfigurationsdatei definiert ist:

"poi" : [ 
            ["San Francisco",37.757144,-122.44812,7000], 
        ]

Wenn die Geräteposition innerhalb eines Umkreises von 7000 Metern vom definierten Punkt bestimmt wird, wird eine a.loc.poi Kontextdatenvariable mit dem Wert San Francisco mit dem TrackLocation Treffer gesendet. An a.loc.dist context variable is sent with the distance in meters from the defined coordinates.

Lifetime value

Mit dem Lebenszeitwert können Sie für jeden Benutzer einen Lebenszeitwert messen und vorgeben. Sobald Sie einen Wert mit TrackLifetimeValueIncrease senden, wird der Wert zum vorhandenen Wert hinzugefügt. Der Lebenszeitwert wird auf dem Gerät gespeichert und kann jederzeit mithilfe von GetLifetimeValue abgerufen werden. Dies kann verwendet werden, um Lebenszeiteinkäufe, Banneranzeigen, abgeschlossene Videos, Informationen zur Freigabe in sozialen Netzwerken, Fotouploads usw. zu speichern.

// Lifetime Value Example 
var ADB = ADBMobile; 
var purchasePrice = 39.95; 
var cdata = new Windows.Foundation.Collections.PropertySet(); 
cdata["ItemPurchaseEvent"] = "ItemPurchaseEvent"; 
cdata["PurchaseItem"] = "Item453"; 
cdata["PurchasePrice"] = purchasePrice; 
ADB.Analytics.trackLifetimeValueIncrease(purchasePrice, cdata);

Zeitgesteuerte Aktionen

Mit zeitgesteuerten Aktionen können Sie die In-App-Zeit und die Gesamtzeit zwischen dem Beginn und dem Ende einer Aktion messen. Das SDK berechnet die Dauer der Sitzung und die Gesamtzeit (sitzungsübergreifend), die zum Abschluss der Aktion erforderlich ist. Auf diese Weise können Segmente definiert werden, die zeitlich mit dem Kauf verglichen werden sollen, Übermittlungsstufe, Kassengang usw.

  • Gesamtanzahl der App-Sekunden zwischen Beginn und Ende - Sitzungen
  • Gesamtanzahl der Sekunden zwischen Beginn und Ende (Uhrzeit)
// Timed Action Start Example 
var ADB = ADBMobile; 
var cdata = new Windows.Foundation.Collections.PropertySet(); 
cdata["ExperienceName"] = experience; 
ADB.Analytics.trackTimedActionStart("TimeUntilPurchase", cdata);
// Timed Action Update Example 
var ADB = ADBMobile; 
var cdataUpdate = new Windows.Foundation.Collections.PropertySet(); 
cdataUpdate["ImageLiked"] = imageName; 
ADB.Analytics.trackTimedActionStart("TimeUntilPurchase", cdata); 
// Timed Action End Example 
var ADB = ADBMobile; 
ADB.Analytics.trackTimedActionEnd("TimeUntilPurchase");

Auf dieser Seite