Kuinka poimia analyysitietoja iOS-sovelluksesta

Tietopohjaisena yrityksenä on välttämätöntä ymmärtää, kuinka käyttäjät käyttävät sovellusta parantaakseen kokemustaan. Tässä blogissa aion selittää, kuinka me poimimme ja käytämme analyyttistä tietoa sovelluksen iOS-versiosta.

Mobile Analytics | lähde: tatvic.com

Täällä Revolutissa käytämme kahta pääalustaa (Google Analytics ja Amplitude) oivalluksemme tietoja monista tietopisteistä. Tänään näytämme sinulle, kuinka luoda laajennettava, luotettava ja testattava ratkaisu mobiilianalytiikkaan.

täytäntöönpano

Aloitamme määrittelemällä protokolla sovelluksessamme mahdollisesti tapahtuvien tapahtumien seuraamiseksi. Kutsutaan sitä TrackingEventType-tyyppiseksi.

Tällä protokollalla on kaksi ominaisuutta: Ainutlaatuinen tunniste, jota käytetään erottamaan yksi tapahtuma toisesta, ja ominaisuudet, joita käytämme tietojen jakamiseen analyysialustojen kanssa.

Seuraavaksi luomme enumin, jossa jokainen tapaus edustaa yhtä tapahtumaa.

Meidän on nyt otettava käyttöön TrackingEventType asettaaksesi tapauksen ja sen tunnisteiden ja ominaisuuksien välinen suhde.

Hienoa, joten nyt tiedämme, mitä tapahtumia voidaan seurata, mutta emme tiedä, miten niitä todella seurataan. Meidän on määriteltävä yksi tai useampi tarjoaja; Palveluntarjoaja on luokka, joka edustaa analyysijärjestelmää, kuten Google Analytics tai Amplitude. Katsotaanpa protokollaa, jota kaikkien palveluntarjoajien on noudatettava:

Palveluntarjoaja tekee 4 asiaa:

  • Asettaa itsensä seuraamaan tapahtumia
  • Hyväksyy tapahtumat ja seuraa niitä aktiivisesti
  • Yhdistää seurantaistunnot tietyn käyttäjän kanssa
  • Irrota seurantaistunto käyttäjästä

Koska käytämme sekä GA että Amplitude, meidän on tapauksessamme luotava erilliset palveluntarjoajat jokaiselle analysointijärjestelmälle. Seuraamme Amplitude-tapahtumia luomalla AmplitudeProvider. Katsotaanpa toteutusta.

Vaikka toteutus on melko suoraviivaista, on syytä käydä jokainen vaihe läpi nopeasti.

  • Asennusmenetelmässä olemme luomassa yhteyttä Amplitudilla. Tämä tarkoittaa yleensä, että meidän on annettava jonkinlainen avain analysointijärjestelmälle.
  • Radalla (tapahtuma: TrackingEventType) otamme tunnisteen ja tapahtuman ominaisuudet yhdessä ja lähetämme sen suoraan Amplitudille.
  • Yhdistettynä (käyttäjän kanssa: Käyttäjä) määrittelimme käyttäjäkohtaiset muuttujat istuntojen oikealle kirjautumiselle. Huomaa, että sinun on soitettava tähän menetelmään heti, kun käyttäjä on kirjautunut sisään.
  • disassociateUser on kohta, jossa sinun täytyy katkaista linkki nykyisen seurantaistunnon ja käyttäjän välillä. Sinulle on soitettava, kun käyttäjä on kirjautunut ulos.

Viimeinen tarvitsemme luokka on asiakas, joka tekee kaksi asiaa. Se tallentaa kaikki tarjoajat ja välittää tapahtumia tarjoajille. Katsotaanpa protokollaa:

TrackingClientType perii TrackingProviderTypeltä, koska se välittää kaikki puhelut joukolle palveluntarjoajia. Katsotaanpa miten voimme toteuttaa asiakkaan.

Kuten huomaat, asiakas yksinkertaisesti tallentaa palveluntarjoajat ja välittää tapahtumat heille kaikille. Muussa sovelluksessa työskentelet melkein yksinomaan asiakkaan ilmentymän kanssa.

Käyttö

Paras tapa käsitellä analyysijärjestelmäämme on luoda TrackingClient-esimerkki ja syöttää se kaikille vaadituille tarjoajille. Hyvä paikka tehdä niin on didFinishLaunchingWithOptions -menetelmä. Soita seuraavaksi setup () -menetelmälle, jotta palveluntarjoajat voivat määrittää itsensä oikein.

Kun on aika aloittaa tapahtumien seuranta, sinun on vain siirrettävä tapahtuma seurantaasiakkaalle seuraavasti:

Se on se - sinulla on hyvä mennä!

Bonus - testattavuus

Sinä luultavasti ihmettelet, miksi olemme piilottaneet kaikki luokat protokollien taakse. Teimme sen tarkoitukseen - testattavuuteen. Koska emme luota tiettyyn toteutukseen, voimme helposti luoda erityisen TrackingClientType-toteutuksen, joka antaa meille mahdollisuuden testata koodiamme.

Kuvittele, että työskentelet sivulla, jolla käyttäjät voivat ostaa tuotteitasi ja haluat nähdä kaikki Google Analyticsissa tehdyt ostot.

Jotta tämä olisi mahdollista, luomme nuken palveluntarjoajan, joka paljastaa kaikki seuratut tapahtumat.

Voit nyt korvata normaalin asiakkaan nukkeella ja testata!

Koska TestTrackingClient paljastaa kaikki seuratut tapahtumat tapahtumaominaisuuden kautta, on todella helppo tarkistaa, mitä koodiamme seuraa.

johtopäätös

Tähän mennessä sinun pitäisi pystyä rakentamaan oma laajennettava, luotettava ja testattava ratkaisu iOS-sovellukseesi. Ratkaisu perustuu protokollapohjaiseen ohjelmointiin ja enumeihin, joihin liittyy niihin liittyviä arvoja - tutustu lähdekoodiin.

Kuten aina, olemme tyytyväisiä palautteesi, kommenttisi ja ehdotuksesi.