12

ho impostato tutte le cose per l'API di Google Analytics v4 come accennato qui:
https://developers.google.com/analytics/devguides/collection/android/v4/
e qui: http://www.javacodegeeks.com/2014/04/working-with-google-analytics-api-v4-for-android.htmlGoogle Analytics API v4 per Android non invia Schermo Visualizzazioni


Riesco a vedere i dati in tempo reale ma NON sono riuscito a visualizzare le schermate , gli utenti attivi, i nuovi utenti ei modelli di dispositivi principali in un determinato periodo di tempo, ad esempio "Tutto il tempo".

L'analisi non invia visualizzazioni di schermata.


Ecco il mio global_tracker.xml

<string name="ga_trackingId">UA-XXXXXXXX-Y</string> 

    <integer name="ga_sessionTimeout">300</integer> 

    <bool name="ga_autoActivityTracking">true</bool> 

    <bool name="ga_reportUncaughtExceptions">true</bool> 

    <screenName name="com.org.ScreenActivity1">Screen 1</screenName> 
    <screenName name="com.org.ScreenActivity2">Screen 2</screenName> 


Ecco il mio AndroidManifest.xml

 <meta-data 
      android:name="com.google.android.gms.version" 
      android:value="@integer/google_play_services_version"/> 

     <meta-data 
      android:name="com.google.android.gms.analytics.globalConfigResource" 
      android:resource="@xml/global_tracker"/> 


Ecco il mio Analytics.java

public enum TrackerName { 
     APP_TRACKER, // Tracker used only in this app. 
     GLOBAL_TRACKER // Tracker used by all the apps from a company. eg: roll-up tracking. 
    } 

    HashMap<TrackerName, Tracker> mTrackers = new HashMap<TrackerName, Tracker>(); 

    public Analytics() { 
     super(); 
    } 

    public synchronized Tracker getTracker(TrackerName trackerId) { 

     if (!mTrackers.containsKey(trackerId)) { 

      GoogleAnalytics analytics = GoogleAnalytics.getInstance(this); 

      if (trackerId == TrackerName.GLOBAL_TRACKER) { 
       mTrackers.put(trackerId, analytics.newTracker(R.xml.global_tracker)); 
      } 

     } 

     return mTrackers.get(trackerId); 
    } 


Qui è la mia classe Attività:

protected void onCreate(Bundle bundle){ 
//...................... 

Tracker tracker = ((Analytics) getApplication()).getTracker(Analytics.TrackerName.GLOBAL_TRACKER); 
     tracker.setScreenName("Main Activity"); 
     tracker.send(new HitBuilders.AppViewBuilder().build()); 

//...................... 

} 

    @Override 
    protected void onStart() { 
     super.onStart(); 
     GoogleAnalytics.getInstance(this).reportActivityStart(this); 
    } 

    @Override 
    protected void onStop() { 
     super.onStop(); 
     GoogleAnalytics.getInstance(this).reportActivityStop(this); 
    } 
+0

Ho installato tutto il codice necessario come stessi u, ma non ho potuto vedere l'utente attivo nella panoramica in tempo reale e nel gatto registro i ho ottenuto GAV4 nessuna data di compagin trovata hai passato questo problema? – Tony

+0

Non ho ricevuto un errore simile. Hai aggiunto gli ultimi servizi googleplays a gradle? –

+0

sì, ho aggiunto che ora funzionano tutte le cose ma sulla recensione in tempo reale di google analytics non ho visto il client attivo – Tony

risposta

13

Il problema secondo risposta @stkent è che il AppViewBuilder() è deprecato in modo da poter risolvere il problema da deleteing questa riga di codice questo è quello che vi serve nel vostro caso E per aiutare le persone che hanno lo stesso problema dopo aver seguito this cancellare questa riga di codice

tracker.send(new HitBuilders.AppViewBuilder().build()); 

e aggiungere questo invece

@Override 
protected void onStart() { 
    super.onStart(); 
    GoogleAnalytics.getInstance(this).reportActivityStart(this); 
} 

@Override 
protected void onStop() { 
    super.onStop(); 
    GoogleAnalytics.getInstance(this).reportActivityStop(this); 
} 

in ogni attività si desidera tenere traccia

ulteriori informazioni da parte di Google doc su quei 2 metodo

reportActivityStop 
reportActivityStart 

usando questo con il controllo automatico è un noop modo è possibile disattivarla

la risposta originale è per @skent su questo post

2

ho perso un giorno a questo. Provato tutto, dalla documentazione ai codici di Internet, niente ha fatto il lavoro di mostrarmi le viste generali dello schermo. Finalmente, dopo la mezzanotte di oggi, si presentarono.

Immagino che se i dati in tempo reale di Google (invio di Tracker in onCreate o metodo simile) funzionino per te, aspetta solo un giorno, che i dati verranno elaborati da qualche parte sui server di Google e pronti dopo un po 'di tempo sul dashboard analitico .

ps. non ascoltare Tony, il suo problema non è lo stesso di questo.Ma stkent ha alcune buone intuizioni al problema google analytics doesn't show the active user in Real time overview

+0

non ho ricevuto nulla ma dopo aver sistemato il mio problema posso vedere ora quale pulito bisogno di mostrare così penso che potrebbe aiutare plz don ' Parlo di qualcosa che non hai provato – Tony

+0

Il tuo inglese è cattivo amico mio, non ti capisco molto bene. La tua risposta è, suppongo, corretta ora. Anche se sto usando il codice google standard con l'invio del Tracker proprio come dici tu in quella linea cancellata e ora funziona per me.Alla fine, siamo tutti d'accordo che questo Google Analytics è pieno di codice illogico: D – Beemo

+1

sono d'accordo con te ora ho trovato molti problemi quando seguo la guida di Google Analytics e penso che mettere qualche frammento di codice non è buono per principianti – Tony

2

aggiungendo

<application 
android:name="mypackagename.MyApplication" 
... > 

nel file manifest, fa il trucco.

1

@tony è corretto, la classe HitBuilders.AppViewBuilder è obsoleta, ma non è necessario implementare i metodi onStart/Stop se non si desidera. Come indicato in on GA's V4 tutorial (sezione 4), è possibile sostituire la classe AppViewBuilder di HitBuilders.ScreenViewBuilder() e si otterrà il risultato desiderato su tutte le piattaforme.

Vedi ulteriori dettagli sulle API di riferimento di classe qui: https://developer.android.com/reference/com/google/android/gms/analytics/HitBuilders.ScreenViewBuilder.html