Juli 2015

Band 30, Nummer 7

Google Analytics - Analyse des Benutzerverhaltens in Ihrer Windows/Windows Phone App mit Google Analytics

Von Nicola Delfino

App Entwicklung ist per definitionem ein iterativer Prozess, so dass Sie verstehen, in kürzester Zeit, wie Ihre app verwendet wird und wie eine neue Version oder ein Feature Benutzerverhalten auswirken kann, wollen. Ist wieviel eine Funktion, die wirklich verwendet? Was ist das Benutzerverhalten auf einer bestimmten Seite? Wie lange dauert einen Benutzer ausgeben, um eine bestimmte Aufgabe zu erledigen? Was sind die häufigsten Hardware-Konfigurationen? Was passiert, wenn ein Unfall passiert? Wie erfolgreich sind Testversionen und in-app-Käufe? Führe die Benutzer offline app? Dies sind nur einige der Fragen, die ein Telemetriesystem beantworten kann.

Es gibt eine Reihe von Telemetrie-Anbieter, die offiziell Windows Entwicklung unterstützen (bit.ly/1KGgAdQ), und Microsoft Azure umfasst Visual Studio Application Insight, die auch in Visual Studio 2015 integriert ist (bit.ly/1EeM8Ui).

Google Analytics, dank der Google-Analytics-SDK für Windows (auf Codeplex unter bit.ly/1zXfvxJ), ist auch einfach in ein Windows- oder Windows Phone app (Silverlight und Universal) integrieren.

In diesem Artikel werde ich auf Google Analytics zu konzentrieren, weil es ist die am weitesten verbreitete Anbieter auf anderen Plattformen, einschließlich Web, und es ist eine gute Wahl, wenn Sie bereits eine Website mit Google instrumentiert haben und dasselbe Konto für apps verwenden möchten. Ich werde beschreiben, wie Telemetrie-Informationen mit Google Analytics erfassen und analysieren die gesammelten Daten, wie installierte app-Versionen, geographische Verbreitung und User-Verhalten, und führen Sie einen A / B-Tests.

Verständnis der Telemetrie Konzepte eignet sich egal welcher Provider verwenden Sie. Ein guter Startpunkt zu diesem Thema ist Kraig Brockschmidts Deck aus Build 2014 (bit.ly/1QGIsSO).

Was ist Google Analytics?

Google Analytics wurde ursprünglich gebaut, um nachverfolgen und Analysieren von User-Verhalten auf Websites. Im Laufe der Zeit Google erweitert seine Unterstützung und Tools, apps, und jetzt eine SDK ist für iOS und Android, sowie. Google bietet auch ein Messprotokoll, die HTTP-Aufrufe roh Benutzer Interaktionsdaten direkt an Google Analytics Server senden werden kann (bit.ly/1kHgDYz). Dadurch können Sie bestimmen, wie die Benutzer mit ihren Unternehmen aus nahezu jeder Umgebung interagieren. Das Google-Analytics-SDK verwendet dieses Protokoll für Windows 8 und Windows Phone. Das SDK ist eine unabhängige open-Source-Tool-Set, das darauf abzielt, Featureparität und API-Ähnlichkeit mit dem offiziellen Google-Analytics-SDK für Android zu haben.

Integrieren Sie Ihre App mit Google Analytics

Um eine app zu integrieren, zuerst müssen Sie das Google Analytics-Dashboard mit ein gültiges Google-Konto, und dann mindestens eine Anwendung anlegen, die den administrativen Bereich zugreifen können (bit.ly/1kPLnqG). Es ist auch eine gute Idee, erstellen Sie separate Konten für Entwicklung, beta-Test und Produktion. Auf diese Weise Sie Daten aus jedem Set separat halten und vermeiden umweltbelastende wichtige Produktionsdaten mit schlechten Daten aus anderen Entwickler und Betatester.

Ein Konto identifiziert eindeutig eine Anwendung (Contoso, für die Zwecke dieses Artikels). In diesem Zusammenhang eine "Appli­kation" bezieht sich wirklich auf eine Sammlung von apps für verschiedene Plattformen und/oder Web-Sites (Contoso für Windows, Contoso für Android, Contoso Web-Dashboard), alle mit ihre Tele schicken­metry Informationen an das gleiche Konto. Jede Anwendung kann auch in mehreren Versionen (Contoso für Windows 1.0, Contoso für Windows 1.1 Contoso für Android 2.0.1) zur Verfügung.

Wenn Sie das Konto in Google Analytics erstellen, müssen Sie auch eine oder mehrere Eigenschaften zu definieren. Hier ist eine Eigenschaft, eine app oder eine Website für Ihr Konto. Eine app-Eigenschaft kann mehrere Versionen, und es ist logisch, eine Eigenschaft für jede unterstützte Plattform (z. B. ContosoW8, ContosoWP8, ContosoDroid) haben. Nachdem Sie Namen für Ihre app ausgewählt und beantwortet ein paar Fragen um den Geschäftsumfang der app zu klassifizieren, wird Google Analytics ein numerischer Konto-ID und eine Tracking-ID mit dem UA-Xxxxxxxx-X, repräsentiert Ihre Plattform-spezifischen app im Google Analytics und verwendet werden, in der alle Telemetrie-Kommunikation gesendet aus dem app-Format generiert.

In meinem Beispielszenario ich habe eine Universalanwendung (W8.1 und WP8.1), so dass ich erstellt zwei Eigenschaft-IDs in einem Google Analytics Konto. Damit können meine app mit Google Analytics zu sprechen, werde ich ein NuGet-Paket verwenden. Dies zu tun, für die Windows- und Windows Phone apps, mit der rechten Maustaste auf Verweise, wählen Sie NuGet Pakete verwalten, und fügen Sie das Paket "GoogleAnalyticsSDK." Dieses Paket enthält ein paar Referenzen und die Datei analytics.xml, gezeigt Abbildung 1, der Visual Studio -Projektmappe. Du musst diese Datei zu bearbeiten, so dass die app die korrekte Tracking-ID verwenden können Sie zuvor erstellt haben.

Abbildung 1 Analytics.xml für Windows und Windows Phone App

<?xml version="1.0" encoding="utf-8" ?>
<analytics xmlns="http://googleanalyticssdk.codeplex.com/ns/easytracker">
<trackingId>UA-60759067-2</trackingId>
  <appName>ContosoWindows</appName>
  <appVersion>1.0.0.0</appVersion>
</analytics>
<?xml version="1.0" encoding="utf-8" ?>
<analytics xmlns="http://googleanalyticssdk.codeplex.com/ns/easytracker">
  <trackingId>UA-60759067-1</trackingId>
  <appName>ContosoWinPhone</appName>
  <appVersion>1.0.0.0</appVersion>
</analytics>

Schließlich müssen Sie sicherstellen, dass Ihre app berechtigt ist, das Netzwerk zu nutzen. Wählen Sie für die Windows Phone-app die ID_CAP_NETWORKING-Funktion in der Datei WMAppManifest.xml; Wählen Sie für Windows 8 internetfà (Client) in der Datei package.appxmanifest.

Die App das Instrumentieren

Die erste Kategorie von Informationen, die meisten Entwickler verfolgen möchten ist die Benutzerführung. Dieses SDK verwenden, müssen Sie senden das richtige Ereignis jedes Mal, wenn ein Benutzer eine Seite zugreift. Das Google-Analytics-SDK verfügbar macht den SendView-Befehl für diese, und der natürliche Ort zum Aufrufen dieser Methode ist das Loaded-Ereignis der einzelnen Seiten:

void MainPage_Loaded(object sender, RoutedEventArgs e)
{
GoogleAnalytics.EasyTracker.GetTracker().SendView("Main");
}
void Page1_Loaded(object sender, RoutedEventArgs e)
{
GoogleAnalytics.EasyTracker.GetTracker().SendView("Page1");
}
void Page2_Loaded(object sender, RoutedEventArgs e)
{
GoogleAnalytics.EasyTracker.GetTracker().SendView("Page2");
}

Denken Sie daran, dass ein "View" nicht nur eine app-Seite ist; Sie müssen auch andere Aspekte der Benutzeroberfläche zu betrachten, die die Aufmerksamkeit des Benutzers (z. B. die Einstellungen-Panel und Dialogfelder) konzentrieren, die Sie beobachten und analysieren möchten.

SendView erfordert einen String-Parameter, der eindeutig von der Seite oder UI-Aspekte, die Sie erfasst sind. Dieser Name erscheint auf der Google Analytics-Dashboard und Berichte als Referenz für Ihre Seite. Generische und sinnvollen und leicht mit der Quellseite Kosenamen sollten. Es muss nicht übersetzt werden, auch wenn Ihre Anwendung mehrere Sprachen unterstützt, da es durch das Analysesystem als eine andere Seite interpretiert werden würde. Mit anderen Worten, es sei denn, Sie Telemetrie-Daten für lokalisierte Versionen Ihrer Anwendung unterscheiden möchten, stellen Sie sicher, dass die Bezeichner, die Sie an Google Analytics nicht selbst lokalisiert sind.

Jetzt ist die app bereit, seine erste Seitennavigation Telemetrie-Informationen zu senden. Um es anzuzeigen, öffnen Sie Ihre app und für eine Weile durch die Seiten navigieren.

Benutzerführung und die App-Version

Innerhalb von wenigen Sekunden ist die Navigationsdaten bereit und verfügbar für Ihre Analyse. Gehen Sie zu google.com/analytics und melden Sie sich auf Ihre Homepage zugreifen. Klicken Sie auf alle mobile App Data Link die Eigenschaft, die Sie analysieren möchten (in meinem Beispiel die Eigenschaft ist ContosoW8 oder Contoso WP8).

Das Willkommen Dashboard zeigt historische Daten für die letzten 30 Tage, nicht einschließlich des aktuellen Tages. Wenn das Konto neu, ist höchstwahrscheinlich alle Diagramme werden leer sein. Es gibt auch ein Dashboard-Bereich die aktuellsten Daten, die Sie zugreifen können, indem Sie die Echtzeit-Schaltfläche auf der linken Seite im Dashboard auswählen gewidmet.

Die Übersichtsseite zeigt die Anzahl der aktiven Benutzer und zeigt die Bildschirmansicht in Echtzeit mit einer detaillierten Grafik für die Last-Minute und der letzten Stunde (siehe Abbildung 2). Vertikale Balken auf diese Graphen zeigen, dass Benutzerseite zugreift.

Echtzeit-Dashboard
Abbildung 2 Echtzeit-Dashboard

Sie können auch eine Liste der aktivsten Bildschirme in der letzten Stunde mit der Anzahl der aktiven Benutzer sehen. Sehen Sie auf dem Armaturenbrett ist als SendView-Parameter in der app-Code verwendet. Abbildung 2 zeigt in Echtzeit Beispieldaten in "Caledos Runner," eine app, die ich entwickelt habe, die Google Analytics verwendet, um Nutzungsdaten zu sammeln. Ich wollte echte Daten in der app zeigen, so können Sie sehen, wie viele Informationen Sie können von diesem Tool erhalten — und das entsprechende Potenzial.

Jeder Bildschirmname ist anklickbar, so dass Sie die Daten und Ana schneiden können­Lyze die spezifische Verwendung einer Seite. Eines der wichtigsten Stücke von Informationen hier ist die Zeit, verbrauchte auf jeder Seite (oder, besser, auf jede Ansicht). Klicken Sie auf ein Pseudonym, können Sie eine Metrik, die Durchschnittszeit am Bildschirm, um das Diagramm durch Klicken auswählen eine Metrik Explorer Registerkarte Anzeigen hinzufügen.

Ein großartiges Werkzeug Google bietet ist das Verhalten fließen in dargestellten Bericht Abbildung 3. Dank der SendView-API dieses Tool ist verfügbar, indem Sie die Registerkarte "Berichterstellung" auf dem Armaturenbrett Verhalten auswählen und es können Sie analysieren, wie Nutzer über Ihre app-Seiten vom Anfang einer Benutzersitzung bewegen. Der Graph besteht aus einer Folge von Bildschirmen (erste Bildschirm, zweiter Bildschirm und So weiter), und zeigt die Anzahl der Benutzersitzungen, die eine Verbindung herstellen und beenden. Für die Sitzung beenden, können Sie siehe nächste Seite abgerufen (geordnet nach Sitzungsnummer) und der Anzahl der Benutzer, die von dieser Seite (in rot) die app zu verlassen.

Beispiel Verhalten Flow-Bericht
Abbildung 3 Beispiel Verhalten Flow-Bericht

Dieses Werkzeug erlaubt Ihnen, zu verstehen, in denen Benutzer ihre Zeit verbringen, wenn sie die app nutzen, und Sie beschließen schließlich, Zugang zu beliebten Seiten erleichtern durch die Bereitstellung einer Schaltfläche größeren, mehr erkennbaren. Abbildung 3 zeigt, dass die Top drei in meiner app nächste Reiseziele von der Hauptseite Bildschirm sind Askcloud, Running und Aktivität Detail. Dies lässt vermuten, es ist Prob­gekonnt eine gute Idee zu geben, eine zentrale sichtbare Lage mit den entsprechenden Tasten auf der Hauptseite, oder einige Funktionen verschieben Benutzer finden auf diesen Seiten zum Hauptbildschirm, um die Zeit verringern und die Anzahl der Hähne Benutzer diese Aktivitäten erledigen muss.

Sie wollen auch wissen, welche Version Ihrer APP verwendet wird, und diese Informationen stammen von den Geräten, die mit Ihrer app. Bei jedem Aufruf sendet das SDK die app-Version in analytics.xml bereitgestellt, so können Sie Ihre Daten-Scheiben und die verwendete Version zu finden. Historischen app Versionsdaten steht unter Publikum | App-Versionen im linken Bereich des Armaturenbretts. Abbildung 4 zeigt, was normalerweise geschieht, wenn ich eine neue Version meines app im Speicher freigeben. Denn das Standardverhalten in Windows Phone 8.1 zum automatischen herunterladen und installieren die neue Version der app, wenn möglich, innerhalb weniger Tage mehr als 90 Prozent der Benutzer auf die neueste Version migriert (obwohl eine lange Schwanz von weniger als 10 Prozent der Nutzer bleibt, die aus irgendeinem Grund nicht oder nicht aktualisieren möchten).

App Versionsdaten
Abbildung 4 App Versionsdaten

Andere Abmessungen erhalten Sie "kostenlos" mit Navigation verfolgen sind die Lage, Sprache, Gerätename (das ist nicht 100 Prozent genau für Windows Phone) und Netzwerk-Service-Provider, während auf der Maßnahmen-Seite Sie die Anzahl der Sitzungen, unique User und einzigartige neue Benutzer finden.

Mit diesen Informationen sind Sie in der Lage, Fragen zu beantworten: Was ist das aktivste Land oder Stadt? Wo habe ich die meisten neuen Benutzer im letzten Monat? Mit dieser neuen Version verwenden meiner Kunden mehr oder weniger die app? Und in diesem Zusammenhang die einzige Grenze ist Ihre Vorstellungskraft, da Sie benutzerdefinierte Ereignisse, Zähler, Dimensionen und Kennzahlen festlegen können.

Wie ein Benutzer von einem Bildschirm zum anderen navigiert ist ein guter Ausgangspunkt für das Verständnis, wie Ihre Anwendung verwendet wird, aber es gibt viel mehr Informationen zur Verfügung, mehr bezogen auf die Domäne Ihrer APP. Diese Art von Informationen kann als ein benutzerdefiniertes Ereignis verfolgt werden die in der Regel beinhaltet einige generische Benutzerinteraktion oder Informationen, die sinnvoll ist, bis zu dem Entwickler-Team weitergeleitet werden. Ein Ereignis besteht aus vier Feldern können, die Sie verwenden, um die Interaktion eines Benutzers mit Ihrer app-Inhalte zu beschreiben:

  • Zeichenfolge-Kategorie
  • Zeichenfolge-Aktion
  • Zeichenfolgenbezeichnung
  • Long-Wert

Da alle benutzerdefinierte Ereignisse in einer gemeinsamen Liste gehen, helfen die Kategorie, Aktion und Beschriftung Felder um spezifische Informationen zu identifizieren, die Sie analysieren möchten.

Auf diese Weise gesammelten Informationen ist sehr allgemein, und dies ist, wo die Telemetrie eine Kunst wird. Um die Bedeutung der Daten zu geben, starten Sie mit der Frage zu beantworten, die zu der Telemetrie-Design führt, führt dann zu der Instrumentation, die Sie brauchen. Deshalb fangen wir mit einem Beispiel-Ansatz.

Frage: Mein Beispiel-app hat viele Funktionen, ausgelöst durch Schaltflächen auf verschiedenen Seiten der app. Ich möchte verstehen, welche Funktionen verwendet werden, meine Entwicklungsaufwand in die richtige Richtung zu konzentrieren.

Telemetrie-Design: Die wichtigsten Funktionen der app sind ausgelöst durch Tasten, so dass wenn ich die Klicks auf den Knöpfen verfolgen, ein besseres Verständnis der Benutzereinstellungen ich wahrscheinlich gewinnen werde. Die Telemetrie Erfolg Metrik werden die Anzahl der Klicks, die ich aus jeder Schaltfläche erhalten.

Besetzung: Ich kann auf das Click-Ereignis der ausgewählten Schaltflächen und verfolgen das Ereignis.

Der folgende Code zeigt wie zu erfassen, dass ein Benutzer die Tasten "Play" und "stop" geklickt hat:

private void buttonPlay_Click(object sender, RoutedEventArgs e)
{
GoogleAnalytics.EasyTracker.GetTracker().SendEvent(
  "ui_action", "press", "play", 0);
// Your code here
}
private void buttonStop_Click(object sender, RoutedEventArgs e)
{
GoogleAnalytics.EasyTracker.GetTracker().SendEvent(
  "ui_action", "press", "stop", 0);
// Your code here
}

Wie in den vorherigen Nutzeranalyse Navigation haben Sie Ereignistabelle unter den Gruppen in Echtzeit und Verhalten. Je nach Art der Analyse, die Sie tun möchten, können Sie die entsprechende Ansicht, historische oder Echtzeit auswählen.

Veranstaltungen werden angezeigt, für einen bestimmten Zeitbereich (der Standardwert beträgt einen Monat), so können Sie die Anzahl der Ereignisse gruppiert nach der Top-Kategorie, die Aktion und die Bezeichnung drin sehen. Sie können drill-down auf einer bestimmten Kategorie und auf ein bestimmtes Ereignis-Aktion und Sie können auch das Datumsintervall für die Analyse.

Für ein bestimmtes Ereignis-Kategorie, Aktion oder Bezeichnung finden Sie die Gesamtanzahl der Ereignisse, die Anzahl der einzigartigen Veranstaltungen, die Summe aller Werte und den entsprechenden durchschnittlichen Wert.

Abbildung 5 zeigt eine Beispielliste der Ereignisse, und Abbildung 6 zeigt die Gesamt, unique, Summe und Durchschnittswerte für die Gruppe Grp1.

Abbildung 5 Beispiel-Ereignisse

Gruppe Aktion Etikett Wert
Grp1 Presse Button1 1
Grp1 Presse Button1 2
Grp1 Presse Button1 2
Grp1 Presse Button2 3
Grp1 Ja. Label1 4

 

Abbildung 6 Summenwerte für Grp1

Gesamt-Veranstaltungen 5
Einzigartige Veranstaltungen 4
Ereigniswert 12
Ereignis-Mittelwert 2.4

Ein praktisches Beispiel der Nutzung helfen Ihnen besser zu verstehen, das Potenzial des Werkzeugs. Für "Caledos Läufer," Ich wollte verstehen, wie viel die app wirklich verwendet wurde, für die Verfolgung von Aktivitäten und weil ich nicht, zwingen den Benutzer auf, für ein Konto registrieren, um die Anwendung zu verwenden wollte, verwendet ich Ereignisse um diese Informationen zu verfolgen.

Beim Start der app verfolgt ich ein Ereignis für jeden registrierten Benutzer, und ein anderes Ereignis für jeden Benutzer ist nicht, mit Code ähnlich dem folgenden registriert:

if (!string.IsNullOrEmpty(currentUser.AccessToken))
{
GoogleAnalytics.EasyTracker.GetTracker().SendEvent(
  "user", "Cloud", "Registered", 1);
}
else
{
GoogleAnalytics.EasyTracker.GetTracker().SendEvent(
  "user", "Cloud", "Unregistered", 1);
}

Ich habe entdeckt, dass nicht 55 Prozent der Nutzer ihre Daten in die Cloud schicken, um ein präzises Profil meiner Benutzer erhalten am Ende jedes GPS-Aktivität die app ein Ereignis mit Informationen über die zurückgelegte Distanz und ein Ereignis mit der Gesamtdauer der Tätigkeit sendet mithilfe von Code ähnlich dem folgenden:

GoogleAnalytics.EasyTracker.GetTracker().SendEvent(
  "activity", "outdoor", "time", (long)CurrentFitnessActivity.Duration);
GoogleAnalytics.EasyTracker.GetTracker().SendEvent(
  "activity", outdoor", "distance", (long)model.CurrentFitnessActivity.TotalDistance);

Infolgedessen habe ich erhalten, die Daten in Abbildung 7 für die erste Woche von Februar 2015.

benutzerdefinierte Ereignisse-Beispiel
Abbildung 7 benutzerdefinierte Ereignisse-Beispiel

Was sagt diese Analyse ist: In der ersten Woche im Februar, hat die app erfolgreich verfolgt mehr als 15.000 Stunden (54,000,000 Sekunden) und 51.000 Km (32.000 Meilen). Der durchschnittliche Benutzer verwendet die app für eine Aktivität von etwa 5 Km (3,1 Meilen), über die Distanz in eine Stunde und eine Hälfte (5.400 Sekunden).

Gut zu wissen, aber nicht genug! Dies ist nur ein Durchschnittsverbrauch anzeigen, aber eher wollte Sie wissen, wie, dass Nutzung wirklich verteilt wird. Dies ist eine multisport-app, so Sie wissen wollen, die beliebteste Sportart und ob dieser Popularität kommt von einer kleinen Anzahl von Benutzern, die oft unter Verwendung der app oder eine Menge von Benutzern, die es zu benutzen, aber für nur eine kurze Zeit.

Dies ist, wo Google Analytics benutzerdefinierte Dimensionen und Kennzahlen helfen können. Benutzerdefinierte Dimensionen und Kennzahlen können Sie zusätzliche Daten in Google Analytics zu bringen, die Ihnen neue Fragen über die Interaktion der Nutzer mit dem Inhalt beantworten helfen. Eine Metrik ist eine Anzahl eines Datentyps, die über Ihre Google Analytics-Hits zusammengefasst. Eine Metrik entspricht einer Spalte in einem Bericht. Dimensionen können Sie eine Metrik nach einem bestimmten Wert, z. B. Bildschirmansichten Bildschirm namentlich aufzuschlüsseln. Abmessungen entsprechen die Zeilen in einem Bericht (bit.ly/1lOry2r).

Es gibt zwei wichtigsten Schritte zum Implementieren einer benutzerdefinierten Dimension oder metrisch:

  • Definieren Sie das benutzerdefinierte Dimension oder metrisch über das Webinterface von Google Analytics (bit.ly/1Je9RJQ).
  • Implementieren Sie Code festlegen und benutzerdefinierte Dimension und metrische Werte zu sammeln.

Jede Google Analytics-Eigenschaft verfügt über 20 verfügbaren Indizes für benutzerdefinierte Dimensionen, und eine weitere 20 Indizes für benutzerdefinierte Metriken. Sobald eine Bemaßung oder eine Metrik erstellt wurde, kann Code auf diese Metrik oder Dimension mit den entsprechenden Index verweisen.

Kommen wir zurück zu meiner Frage zu verstehen, die Sport-Aufteilung ich eine Bemaßung erzeugt Leistungsart mit Gültigkeitsbereich, Hit, und verwendet den folgenden Code, um diese Informationen in der Ansicht angezeigt, die durch die app während einer Sitzung Eignung zu verfolgen:

GoogleAnalytics.EasyTracker.GetTracker().SetCustomDimension(1, activityType);
GoogleAnalytics.EasyTracker.GetTracker().SendView("Running");

A / B-Tests

A / B-Tests ist ein Begriff, der Vermarkter verwenden, um zu testen, die Einblick in das Besucherverhalten, mit dem Ziel der Erhöhung der Conversion-Rate bereitstellt. (Laut Wikipedia "ist die Conversion-Rate der Anteil der Besucher einer Website, die Maßnahmen ergreifen, um eine lässige Inhaltsansicht oder Website hinausgehen besuchen, durch subtile oder direkte Anfragen von Vermarkter und Werbetreibende Inhaltsersteller.")

Der app-Entwicklung-Welt, A / B-Tests bedeutet testen zwei verschiedene Versionen eines Elements (z. B. eine Seite oder eine Schaltfläche) mit einer Metrik, die den Erfolg der ein Szenario über die andere definiert.

Angenommen Sie, Sie verfügen über zwei Designs einer Seite A und B. In der Regel A ist das bestehende Design (Kontrolle) und B ist das neue Design. Sie können Ihre Benutzer Basis zwischen diesen beiden Versionen und Maßnahme teilen ihre Leistung mit einer Metrik, die sinnvoll für Ihre app (vielleicht einer bestimmten Schaltfläche anklicken) ist Ihr Erfolg-metrisch oder Ihre Conversion-Rate zu finden. Am Ende des Tests wählen Sie das Element, das am besten durchführt.

Mit anderen Worten, angenommen Sie, jedes Design ist eine andere app-Seite mit der XAML-Datei (page3v1.xaml und page3v2.xaml). Auf jeder Seite haben Sie Ihr Ziel — die Schaltfläche, die der Benutzer klicken soll — und das Click-Ereignis der Schaltfläche können Sie um ein benutzerdefiniertes Ereignis zu verfolgen, die einen erfolgreichen Klick auf den Button erkennt. Unter Ausnutzung des MVVM-Musters können Sie die Aussicht vom Modell und das Ansichtsmodell abkoppeln, so Sie problemlos zwei XAML-Dateien haben können, die gleiche Logik und Daten enthalten.

Dann können Code wie den folgenden Sie Benutzer, die Seiten zu testen, zu Navigation gleichmäßig zwischen Versionen A und B der Seite aufteilen:

if (DateTime.Now.Second % 2 == 0)
  this.Frame.Navigate(typeof(Page3V1));
else
  this.Frame.Navigate(typeof(Page3V2));

Sie können den Erfolg des Layouts verfolgen, indem man festhält, die mit auf die Schaltfläche klicken:

GoogleAnalytics.EasyTracker.GetTracker().SendEvent(
  "ABTest", "Scenario1", "pageV1", 0);

oder auf der ersten Seite auf die Schaltfläche klicken:

GoogleAnalytics.EasyTracker.GetTracker().SendEvent(
  "ABTest", "Scenario1", "pageV2", 0);

und auf der gleichen Klick auf der zweiten Seite.

Die Gesamtanzahl der Ereignisse für jede Bezeichnung (PageV1, PageV2) bestimmt die erfolgreichste Seite. Am Ende des Tests bleiben nur diese Seite in der Anwendung, während die andere entfernt werden kann.

Nachbereitung

In modernen app Entwicklung machen Telemetrie und Analyse-Tools einen wirklichen Unterschied in Bezug auf, wie schnell Sie User-Verhalten und Anwendungsprobleme sowie deren Lösung identifizieren können. In diesem Artikel habe ich nur eine kleine Auswahl der Szenarien diskutiert, die analysiert werden können. Die Anzahl und Art von solchen Szenarien ist nur durch Ihre Fantasie und Neugier begrenzt.


Nicola Delfino ist eine Anwendung Entwicklungsmanager in der Microsoft-italienische Service-Abteilung und der Autor der "Caledos Läufer," einer der erfolgreichsten Fitness-Tracking-apps für Windows Phone, die ihm die Möglichkeit gab, verwenden Telemetrie zu entdecken und zu analysieren, wie die Menschen seine ca. einsetzen Sie erreichen ihn unter nicold@microsoft.com oder nicola@caledos.com.

Vielen Dank an den folgenden technischen Experten von Microsoft für die Überprüfung dieses Artikels: Kraig Brockschmidt