Come passare da Google Analytics a Firebase Analytics?


85

sfondo

Negli ultimi mesi, Google ha pubblicato una nuova alternativa ad Analytics, chiamata " Firebase Analytics ".

Il problema

Poiché l'app dispone già di Google Analytics, trovo alcuni ostacoli che non riesco a vedere come gestire al meglio.

Le domande

  1. In precedenza, la funzione "newTracker" necessitava di un ID proprietà. Adesso non lo vedo. Significa che non ne ha bisogno?

  2. In precedenza, "enableAdvertisingIdCollection" era disponibile anche per raccogliere informazioni sugli annunci. Non riesco a trovarlo nelle nuove API. Viene raccolto automaticamente?

  3. "setDryRun" era disponibile per disabilitare l'invio dei dati ai server, e ora non lo vedo. Significa che è automaticamente in questo modo per le versioni di debug dell'app? Tutte le funzioni scrivono nei log?

  4. In precedenza, potevo monitorare uno "schermo":

    public void setScreenName(String name) {
        mGoogleAnalyticsTracker.setScreenName(name);
        mGoogleAnalyticsTracker.send(new HitBuilders.ScreenViewBuilder().build());
    }
    

    Ora non lo vedo, ma come ho letto, penso che sia automatico, quindi invia comunque i dati del ciclo di vita dell'attività. È vero?

  5. Probabilmente la cosa più importante: in precedenza potevo monitorare utilizzando categoria, azione, etichetta e valore:

    public void trackEvent(final String category, final String action, final String label, final long value) {
        mGoogleAnalyticsTracker.send(new HitBuilders.EventBuilder()
                .setCategory(category).setAction(action)
                .setLabel(label).setValue(value).build());
    }
    

    e ora vedo un modo completamente diverso per tenere traccia degli eventi ("eventi personalizzati"), utilizzando i bundle . Esempio:

    Bundle bundle = new Bundle();
    bundle.putString(FirebaseAnalytics.Param.ITEM_ID, id);
    bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, name);
    bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "image");
    mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_CONTENT, bundle);
    

    Come funziona? Come viene mostrato nel sito web di Firebase Analytics ? Suppongo di poter fare in modo che il primo parametro di logEvent si comporti come il parametro di categoria di Google-Analytics, ma cosa posso / devo fare per il resto? Secondo i documenti, dovrebbe essere ok:

    public void trackEvent(final String category, final String action, final String label, final long value) {
        Bundle bundle = new Bundle();
        bundle.putString("action", action);
        bundle.putString("label", label);
        bundle.putLong("value", value);
        mFirebaseAnalytics.logEvent(category, bundle);
    }
    
  6. Quali eventi vengono effettivamente tracciati automaticamente (lo chiedo perché alcuni si dice che non dovrei usare, qui )? Includono gli acquisti? app-invita? Annunci? Dove li vedo nel sito Web della console?

  7. Per quanto riguarda i log, si dice che il nuovo SDK lo fa:

    Puoi abilitare la registrazione dettagliata con una serie di comandi adb:

    adb shell setprop log.tag.FA VERBOSE adb shell setprop log.tag.FA-SVC VERBOSE adb logcat -v time -s FA FA-SVC

    Cosa fanno questi comandi? Come posso disabilitarlo? Ho notato che viene persino mostrato nella versione di rilascio dell'app ...

  8. Il nuovo SDK dovrebbe sostituire Google Analytics? È suggerito di passare completamente ad esso? Google Analytics avrà aggiornamenti?


1
Perché votare per la chiusura? :(
sviluppatore Android

1
Nota a margine, ho cercato Firebase Analytics e l'ho appena implementato sulla mia app reattiva. Sembra che sia stato rinominato "Google Analytics per Firebase" firebase.google.com/docs/analytics
io il

GOOGLE Analytics è obsoleto per il Web?
Ahmad Arslan

@AhmadArslan Non lo so
sviluppatore Android

Risposte:


56

Molte domande raggruppate insieme, quindi cercherò di rispondere brevemente alla maggior parte di esse:

  1. Rapporti di Google Analytics sugli ID tracker, rapporti di Firebase Analytics sulle applicazioni. Esiste un solo ID nell'applicazione definita nel tuo google-services.json. L'ID viene tradotto in una risorsa stringa dal plug-in dei servizi Google con il nome "google_app_id". Tutti gli eventi dall'app vengono segnalati a questo singolo ID.
  2. Firebase Analytics segnala automaticamente AdId. Non è necessario abilitarlo.
  3. Non è presente la funzione DryRun. Puoi utilizzare google-services.json separato durante lo sviluppo, filtrare la versione di sviluppo utilizzando la versione dell'app o aggiungere proprietà utente per contrassegnare le istanze dell'app utilizzate per lo sviluppo.
  4. Puoi segnalare schermate con

    Bundle params = new Bundle();
    params.putString(FirebaseAnalytics.Param.ITEM_CATEGORY, "screen");
    params.putString(FirebaseAnalytics.Param.ITEM_NAME, "screen name");
    firebaseAnalytics.logEvent(FirebaseAnalytics.Event.VIEW_ITEM, params);
    
  5. Puoi registrare eventi personalizzati con gli stessi parametri

    Bundle params = new Bundle();
    params.putString("category", category);
    params.putString("action", action);
    params.putString("label", label);
    params.putLong("value", value);
    firebaseAnalytics.logEvent("xyz_event", params);
    

    Il prefisso "ga_" è riservato e la tua analisi fallirà se lo utilizzi. Utilizza invece "xyz_" dove xyz sono le iniziali della tua azienda, ad esempio.

    Non utilizzare la categoria come nome dell'evento a meno che tu non abbia pochissime categorie che desideri monitorare. Firebase Analytics supporta fino a 500 nomi di eventi. Se si registrano più dati, alcuni dati verranno ignorati.

  6. C'è un elenco di nomi di eventi riservati all'inizio della classe FirebaseAnalytics.Event . Rappresenta approssimativamente gli eventi automatici riportati.

  7. Firebase Analytics ha la registrazione del debug disabilitata per impostazione predefinita. Registra solo errori e avvisi. Se non abiliti il ​​log di debug e la tua app è configurata correttamente, ci sono solo 2 righe che vengono registrate all'avvio dell'app con le istruzioni su come abilitare il log di debug. Non c'è nulla da disabilitare in produzione e non esiste alcun equivalente a setLogLevel (ERROR) di Google Analytics. WARN è il livello di registrazione predefinito. È possibile abilitare la registrazione solo su un singolo dispositivo eseguendo il comando adb sul dispositivo). Ciò ti aiuta a evitare la spedizione di app in produzione con la registrazione del debug abilitata.

  8. Google Analytics SDK per Android e iOS non è obsoleto e sarà supportato e aggiornato per il prossimo futuro. Non devi allontanarti da esso se hai già investito utilizzandolo nella tua app e soddisfa le tue esigenze.


3
5. Sembra che non sia ancora supportato l'uso di bundle personalizzati, secondo questi post: stackoverflow.com/a/37779048 , stackoverflow.com/a/37511858 . Peccato.
sviluppatore Android

1
Grazie per il commento. Valore modificato in lungo in 5. Non sono ancora disponibili rapporti automatici su tutti i parametri, ma puoi collegare l'account a BigQuery e utilizzarlo per creare rapporti. BigQuery ha una quota gratuita che potrebbe essere tutto ciò di cui hai bisogno. Abotu 3. L'impostazione predefinita è il reporting. 4. La segnalazione dello schermo non è automatica. È necessario registrare l'evento quando si visualizzano i contenuti. 5. Se il rapporto predefinito non è sufficiente, puoi eseguire query sui dati in BigQuery. Ha gli eventi grezzi come li hai registrati. 6. Ignorare app_uninstall. 7. Se abiliti il ​​log di debug su un dispositivo , vedrai tutti i log.
djabi

1
8. Questa è una domanda molto ampia. Quali caratteristiche particolari stai chiedendo. Se Firebase Analytics è identico a Google Analytics, sarà Google Analytics e non Firebase Analytics.
djabi

2
"I prefissi" firebase_ "," google_ "e" ga_ "sono riservati e non devono essere utilizzati.": Firebase.google.com/docs/reference/cpp/group/parameter-names Il mio suggerimento invece di "ga_event" sarebbe essere "abc_event" dove "abc" è un acronimo per te o per la tua azienda.
KRA2008

5
Sono atterrato qui perché siamo nel 2019 e Google sta presto deprecando GA a favore di FA, quindi la mossa è obbligatoria. support.google.com/firebase/answer/9167112
Ryan

13

Google Analytics è un servizio freemium di analisi web offerto da Google che traccia e segnala il traffico del sito web. 1 Google ha lanciato il servizio nel novembre 2005 dopo aver acquisito Urchin. Firebase è un fornitore di servizi cloud e una società di servizi backend con sede a San Francisco, in California. L'azienda realizza una serie di prodotti per sviluppatori di software che realizzano applicazioni web o mobili.

Come passare da Google Analytics a Firebase Analytics?

Google Analytics (GA) e Firebase Analytics (FA), nonostante il loro nome comune, sono molto diversi sotto molti aspetti. Sebbene GA sia uno strumento di analisi generico (e più orientato al web), Firebase è stato costruito tenendo presente il mobile: quindi, il set di funzionalità è diverso tra i due, con alcune cose aggiunte in FA e cose che mancano da GA .

Più specificamente, questi sono alcuni punti degni di nota quando si considera Firebase Analytics:

  • Manca la visualizzazione in tempo reale
  • Gli eventi sono disponibili dopo un periodo di 4-6 ore
  • Manca il flusso di comportamento (da GA)
  • I segmenti di pubblico presentano un grande vantaggio di FA e, insieme alle notifiche, ti consentono di interagire con un gruppo specifico di utenti
  • Quando si utilizza Firebase Crash Reporting, viene creato automaticamente un pubblico con utenti che hanno subito un arresto anomalo
  • L'analisi del funnel ha molto più senso che in GA, poiché FA si basa su eventi e non su visualizzazioni di schermo
  • Gratuito e illimitato, ad eccezione del numero di tipi di eventi (limitato a 500); nessun limite al volume di eventi per ogni tipo
  • Alcuni eventi vengono registrati automaticamente (ovvero sessioni basate sul ciclo di vita delle attività)
  • Impronta di metodi relativamente bassa, rispetto al conteggio dei metodi di GA
  • Facile da configurare, non c'è nessun singleton da inizializzare, basta includere la dipendenza Gradle e avviare la registrazione degli eventi
  • Console all-in-one, se prevedi di utilizzare altri servizi Firebase

Quanto alla possibilità di passare dall'una all'altra, o di tenerle entrambe in parallelo, la risposta è: dipende.

  • Se prima utilizzavi GA in modo estensivo, è probabile che mancheresti alcune delle sue funzionalità quando passerai completamente a FA.
  • Tuttavia, se questo è un nuovo inizio per il tuo progetto, FA è molto più incline a un ambiente orientato ai dispositivi mobili multipiattaforma, quindi potresti benissimo considerarlo come il tuo strumento di analisi.

In una nota a margine, tieni presente che Firebase è appena stato lanciato e Google ha in programma di aggiungere altre funzionalità nelle prossime settimane (ad esempio, dashboard in tempo reale).

Per il tutorial puoi trovare qui https://firebase.google.com/docs/analytics/android/start/


11
Sono atterrato qui perché siamo nel 2019 e Google sta presto deprecando GA a favore di FA, quindi la mossa è obbligatoria. support.google.com/firebase/answer/9167112
Ryan

1
Quindi questo significa che dobbiamo usare Firebase Analytics invece di Google Analytics? Ho ragione?
Sumit Shukla

@ Ryan Holy Cow! Volevo andare su Google Analytics da Firebase Analytics, ma il tuo commento mi ha salvato! Grazie!
Aleksandar
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.