Gebruikersgedrag bijhouden met Google Analytics SDK voor Android

Google Analytics is een service van Google waarmee u eenvoudig kunt bijhouden wat gebruikers doen. In deze zelfstudie leert u hoe u Android-toepassingsgebeurtenissen zoals schermbelastingen en knopklikken kunt bijhouden om te bepalen wat de gebruikers van uw toepassing doen en wat ze niet zijn!

De Google Analytics SDK voor Android biedt handige klassen en methoden om gebruikersactiviteit bij te houden en nuttige statistieken te genereren over uw Android-app-activiteiten. Hier is een typisch aangepast dashboard voor een bepaald toepassingsgedrag.

Stap 1: Aan de slag

Het heeft geen zin om Google Analytics aan te sluiten, tenzij je al een Android-applicatie hebt ontworpen. Daarom wilt u beginnen met een applicatie die al behoorlijk compleet is om statistische gegevens te verzamelen op de juiste codelocaties. Deze tutorial gaat ervan uit dat je een bestaand Android-project in Eclipse hebt om te werken, dat je de Google Analytics SDK voor Android correct hebt geïnstalleerd, zoals beschreven in "Android App-publicatie: het inschakelen van Google Analytics om app-statistieken te verzamelen" en dat je je hebt aangemeld voor een Google Analytics-account.

Opmerking: deze zelfstudie is gebaseerd op de nieuwste versie van Google Analytics voor Android SDK Release 2 (in de Android SDK Manager), met versie 1.4.2 vermeld in het ReadMe.txt-bestand en op de koppeling voor het downloaden van de website..

Stap 2: Een trackingsessie starten

Voor het verzamelen van statistieken moet uw toepassing een trackingsessie uitvoeren. Alle tracking moet plaatsvinden tijdens deze sessie. Gewoonlijk start u uw tracker ergens zoals uw activiteitsklasse onCreate () of onResume () .

Als u een trackingsessie wilt starten, moet u de tracker importeren:

 import com.google.android.apps.analytics.GoogleAnalyticsTracker;

Krijg een exemplaar van de tracker:

 GoogleAnalyticsTracker-tracker = GoogleAnalyticsTracker.getInstance ();

Start de tracker met een geldige Google Analytics-gebruikersaccountstoken. Hier configureren we de tracker om elke 30 seconden gegevens naar de Google Analytics-servers te verzenden:

 tracker.startNewSession ("UA-12345678-9", 30, this);

Stap 3: Applicatie-activiteit volgen - een overzicht

Nadat u een trackingsessie hebt gestart, is het bijhouden van gebeurtenissen relatief eenvoudig. Hier zijn enkele tips voor een goede tracking:

  • Begrijp dat tracking alleen effectief is als u de haken voor het verzamelen van statistieken op de juiste plaats in uw app plaatst. Dit betekent meestal dat u de callbacks die aan de gebruikersgebeurtenissen in uw toepassing zijn gekoppeld, begrijpt en de even-trackingcode op het juiste moment invoert. U wilt bijvoorbeeld de zwevende gebeurtenissen van knoppen niet volgen, maar misschien wilt u klikken bijhouden.
  • Nadat u de juiste plaats voor de haak hebt geïdentificeerd, moet u ervoor zorgen dat u de juiste (unieke) gegevens naar de Google Analytics-servers verzendt. Alle volgmethoden hebben ontwikkelaar-gedefinieerde parameters, meestal strings, die kunnen worden gebruikt om details te geven over de gebeurtenis die wordt gevolgd. U zult willen spelen met de gegevens die u naar de server stuurt en wat voor soort rapporten u met die gegevens kunt genereren. Er is hier geen juist antwoord.
  • Traceren is net als loggen, het heeft invloed op de prestaties, dus gebruik het verstandig. Verzamel evenementen en stuur ze in batches naar de server. Activeer indien mogelijk de upload in een tijd dat uw toepassing wakker is en toch het netwerk gebruikt.
  • Als u Google Analytics-tracking gebruikt in uw gepubliceerde applicaties, MOET u de gebruiker informeren dat u hun gegevens verzamelt. Verzamel alleen de informatie die u nodig hebt. Overweeg statistische gegevens te verzamelen zoals een anonieme enquête - generieke gegevens die niet kunnen worden gekoppeld aan een specifieke gebruiker.

Stap 4: Trackingactiviteit of schermafdrukken

Tijdens een geldige trackingsessie kunt u schermweergaven volgen door de naam van de activiteit of het scherm op te geven met de methode trackPageView ():

 tracker.trackPageView ( "/ splash-screen");

Deze methode neemt een door de ontwikkelaar gedefinieerde tekenreekswaarde en logt de "weergave" in op de Google Analytics-server. U moet ervoor zorgen dat u unieke namen definieert voor elk item dat u wilt bijhouden met behulp van deze methode. We raden aan om alle strings die door deze methode worden gebruikt als constanten op één locatie te definiëren, zodat het ook eenvoudig is om te bepalen welke schermen of activiteiten geen hits ontvangen, omdat deze informatie net zo waardevol is als die schermen die veel verkeer ontvangen.

Stap 5: Gebruikersgebeurtenissen volgen

Tijdens een geldige trackingsessie kunt u gebruikersevents van elk type bijhouden met behulp van de methode trackEvent ():

 tracker.trackEvent ("Clicks", "Button", "Easy", 0); tracker.trackEvent ("Completions", "Game-Deaths", "Hard-Level-One", 15); tracker.trackEvent ("Die", "Easy", "Two", someNum);

Nogmaals, deze methode neemt een flexibele set van ontwikkelaar-gedefinieerde parameters, die allemaal kunnen worden gebruikt om interessante drill-downrapporten te maken op het Google Analytics-dashboard. Hoe u uw statistieken organiseert, is aan u, maar de parameters zijn in wezen in hiërarchische volgorde.

De methode trackEvent () heeft vier parameters:

  • Een categorie (vereist) - deze string definieert de gebeurteniscategorie. U kunt gebeurteniscategorieën definiëren op basis van de klasse van gebruikersacties, zoals klikken of gebaren of spraakopdrachten, of u kunt ze definiëren op basis van de functies die beschikbaar zijn in uw toepassing (afspelen, pauzeren, snel vooruitspoelen, enz.).
  • Een actie (vereist) - deze tekenreeks definieert de specifieke gebeurtenisactie binnen de opgegeven categorie. In het voorbeeld zeggen we in feite dat de categorie van de gebeurtenis klikken van gebruikers zijn en dat de actie een knopklik is.
  • Een label (optioneel) - deze string definieert een label dat aan de gebeurtenis is gekoppeld. Als u bijvoorbeeld meerdere Knop-besturingselementen op een scherm hebt, kunt u het label gebruiken om de specifieke besturingselement-ID van View op te geven waarop is geklikt.
  • Een waarde (optioneel) - dit gehele getal definieert een numerieke waarde die is gekoppeld aan de gebeurtenis. Als u bijvoorbeeld klikken op klikken bij 'Kopen' bijhoudt, kunt u het aantal items dat wordt gekocht of de totale kosten registreren.

Hoewel dit de rapporten de waarden noemen, kunt u ze echt in kaart brengen zoals u dat wilt. Het is het beste om consistent te zijn binnen een bepaalde applicatie. De tweede twee logboekgebeurtenissen die hierboven worden weergegeven, zijn bijvoorbeeld hetzelfde, maar anders georganiseerd. We hebben een groep van de laatste gelogd; zie de figuur hieronder.
Dit rapport is een goed voorbeeld van hoe het waardeveld wordt weergegeven in het rapport. Het is zowel geaccumuleerd tot een totaal voor alle evenementen als gemiddeld. U moet zelf beslissen of u de waarde zinvol wilt hebben voor elke weergave van categorieën, acties en labels. De getoonde schermafbeelding laat zien dat de waarde die we hebben gebruikt, alleen zinvol kan zijn bij weergave-labels. Deze waarde kan de tijd tot de voltooiing vertegenwoordigen. Het kan een score zijn. Het kan een telling van iets vertegenwoordigen. Het is aan jou om te definiëren. Maar definieer het goed vooraf, of verander de trackingcode en ga naar nieuwe rapporten als u dit wijzigt. U kunt oude gegevens niet herstellen.

Stap 6: Een trackingsessie beëindigen

Doorgaans beëindigt u de sessie in de methoden OnPause () of onDestroy () van Actvitiy, zoals deze:

 tracker. stopSession ();

Conclusie

De Google Analytics SDK voor Android is een eenvoudige manier om te bepalen hoe uw gebruikers uw Android-apps gebruiken. Er zijn verschillende methoden voor het bijhouden van gebeurtenissen die kunnen worden gebruikt om te bepalen welke delen van de toepassing worden gebruikt, en welke functies van de toepassing uw gebruikers routinematig of zelden gebruiken. De gegevens die naar de Google-servers worden verzonden, moeten generiek genoeg zijn om de privacy van gebruikers te beschermen, maar specifiek genoeg om nuttige rapporten voor de ontwikkelaar te genereren. Dit is een evenwichtsoefening die meestal app-by-app-aanpassingen vereist.
Zoals altijd kijken we uit naar uw feedback.

Over de Auteurs

Mobiele ontwikkelaars Lauren Darcey en Shane Conder hebben samen meerdere boeken geschreven over Android-ontwikkeling: een diepgaand programmeerboek getiteld Android Wireless Application Development, Second Edition en Sams Teach Yourself Android Application Development in 24 uur, tweede editie. Wanneer ze niet schrijven, besteden ze hun tijd aan het ontwikkelen van mobiele software bij hun bedrijf en het leveren van consultingservices. Ze zijn te bereiken via e-mail naar [email protected], via hun blog op androidbook.blogspot.com, en op Twitter @androidwireless.

Meer hulp nodig bij het schrijven van Android-apps? Bekijk onze nieuwste boeken en bronnen!