Questo documento descrive come puoi gestire l'invio dei dati a Google Analytics utilizzando l'SDK di Google Analytics per Android v3.
Panoramica
I dati raccolti utilizzando l'SDK di Google Analytics per Android vengono archiviati in locale prima di essere inviati a Google Analytics in un thread separato.
I dati devono essere inviati e ricevuti entro le 04:00 del giorno successivo, nel fuso orario locale di ogni vista. Tutti i dati ricevuti in un secondo momento non verranno visualizzati nei report. Ad esempio, se un hit viene inserito in coda localmente alle 23:59, deve essere inviato entro 4 ore, entro le 03:59, per essere visualizzato nei report. Un hit, invece, in coda alle 00:00 deve essere inviato entro 28 ore, ovvero alle 03:59 del giorno successivo, per comparire nei report.
Spedizione periodica
Per impostazione predefinita, i dati vengono inviati dall'SDK Google Analytics per Android ogni 30 minuti.
Per impostare il periodo di spedizione in modo programmatico:
// Set the dispatch period in seconds. GAServiceManager.getInstance().setLocalDispatchPeriod(15);
Per impostare il periodo di spedizione in XML utilizzando EasyTracker:
<integer name="ga_dispatchPeriod">30</integer>
L'impostazione di un valore negativo comporta la disattivazione dell'invio periodico, che richiede l'invio manuale se vuoi inviare dati a Google Analytics.
// Disable periodic dispatch by setting dispatch period to a value less than 1. GoogleAnalytics.getInstance(this).setDispatchPeriod(0);
Se un utente perde l'accesso alla rete o chiude l'app mentre sono ancora presenti hit in attesa di invio, questi hit vengono mantenuti nello spazio di archiviazione locale. Verranno inviati alla successiva esecuzione dell'app e alla chiamata dell'invio.
Spedizione manuale
Per inviare manualmente gli hit, ad esempio quando sai che la radio del dispositivo viene già utilizzata per inviare altri dati:
GAServiceManager.getInstance().dispatchLocalHits();