Jak przejść z Google-Analytics do Firebase-Analytics?

85

tło

W ostatnich miesiącach firma Google opublikowała nową alternatywę Analytics o nazwie „ Firebase Analytics ”.

Problem

Ponieważ aplikacja ma już Google Analytics, napotykam przeszkody, z którymi nie potrafię sobie najlepiej poradzić.

Pytania

  1. Wcześniej funkcja „newTracker” wymagała identyfikatora właściwości. Teraz tego nie widzę. Czy to znaczy, że go nie potrzebuje?

  2. Wcześniej „enableAdvertisingIdCollection” był również dostępny do zbierania informacji o reklamach. Nie mogę go znaleźć w nowych interfejsach API. Czy jest zbierany automatycznie?

  3. „setDryRun” był dostępny, aby wyłączyć wysyłanie danych do serwerów, a teraz tego nie widzę. Czy to oznacza, że ​​jest to automatyczne w przypadku wersji aplikacji do debugowania? Czy wszystkie funkcje zapisują w dziennikach?

  4. Wcześniej mogłem śledzić „ekran”:

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

    Teraz tego nie widzę, ale jak czytałem, myślę, że jest to automatyczne, więc i tak wysyła dane dotyczące cyklu życia działania. Czy to prawda?

  5. Chyba najważniejsza rzecz: wcześniej mogłem śledzić za pomocą kategorii, akcji, etykiety i wartości:

    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());
    }
    

    a teraz widzę zupełnie inny sposób śledzenia zdarzeń („zdarzeń niestandardowych”) za pomocą pakietów . Przykład:

    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);
    

    Jak to działa? Jak to jest wyświetlane w witrynie Firebase Analytics ? Przypuszczam, że mógłbym mieć pierwszy parametr logEvent zachowywać się jak parametr kategorii w Google-Analytics, ale co mogę / powinienem zrobić na resztę? Według dokumentacji powinno to być w porządku:

    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. Które zdarzenia są rzeczywiście automatycznie śledzone (Pytam o to, ponieważ niektóre są powiedział, że nie powinno się używać, tutaj )? Czy obejmują zakupy? zaproszenia do aplikacji? reklamy? Gdzie mogę je zobaczyć w witrynie konsoli?

  7. O logach mówi, że nowy SDK robi to przez:

    Możesz włączyć szczegółowe rejestrowanie za pomocą serii poleceń adb:

    powłoka adb setprop log.tag.FA VERBOSE powłoka adb setprop log.tag.FA-SVC VERBOSE adb logcat -v czas -s FA FA-SVC

    Co robią te polecenia? Jak mogę to wyłączyć? Zauważyłem, że jest nawet wyświetlany w wydanej wersji aplikacji ...

  8. Czy nowy SDK ma zastąpić Google-Analytics? Czy sugeruje się pełne przejście do niego? Czy Google Analytics będzie miało jakieś aktualizacje?

programista Androida
źródło
1
Dlaczego głosować za zamknięciem? :(
programista Androida,
1
Uwaga dodatkowa: badałem Firebase Analytics i właśnie zaimplementowałem go w mojej aplikacji React Native. Wygląda na to, że zmienia nazwę na „Google Analytics for Firebase” firebase.google.com/docs/analytics
ja
Czy GOOGLE Analytics zostało wycofane z użytku internetowego?
Ahmad Arslan,
@AhmadArslan Nie wiem
programista Androida

Odpowiedzi:

56

Wiele pytań zebranych razem, więc postaram się krótko odpowiedzieć na większość z nich:

  1. Raporty Google Analytics dotyczące identyfikatorów modułów śledzących, raporty Firebase Analytics dotyczące aplikacji. W aplikacji jest tylko jeden identyfikator zdefiniowany w pliku google-services.json. Identyfikator jest tłumaczony na zasób ciągu przez wtyczkę usług Google pod nazwą „google_app_id”. Wszystkie zdarzenia z aplikacji są zgłaszane do tego pojedynczego identyfikatora.
  2. Firebase Analytics automatycznie raportuje AdId. Nie musisz go włączać.
  3. Nie ma funkcji dryRun. Możesz użyć oddzielnego pliku google-services.json podczas programowania, odfiltrować wersję rozwojową za pomocą wersji aplikacji lub dodać właściwość użytkownika, aby oznaczyć wystąpienia aplikacji używane do programowania.
  4. Możesz zgłaszać ekrany za pomocą

    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. Możesz rejestrować zdarzenie niestandardowe z tymi samymi parametrami

    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);
    

    Prefiks „ga_” jest zarezerwowany i jeśli go użyjesz, analiza zakończy się niepowodzeniem. Zamiast tego użyj na przykład „xyz_”, gdzie xyz to inicjały Twojej firmy.

    Nie używaj kategorii jako nazwy wydarzenia, chyba że masz bardzo mało kategorii, które chcesz śledzić. Firebase Analytics obsługuje do 500 nazw zdarzeń. Rejestrowanie większej ilości danych spowoduje zignorowanie niektórych danych.

  6. Na początku klasy FirebaseAnalytics.Event znajduje się lista zarezerwowanych nazw zdarzeń . Z grubsza przedstawia zgłaszane zdarzenia automatyczne.

  7. Firebase Analytics ma domyślnie wyłączone rejestrowanie debugowania. Rejestruje tylko błędy i ostrzeżenia. Jeśli nie włączysz rejestrowania debugowania, a aplikacja jest poprawnie skonfigurowana, są rejestrowane tylko 2 wiersze, gdy aplikacja uruchamia się z instrukcjami, jak włączyć rejestrowanie debugowania. Nie ma nic do wyłączenia w środowisku produkcyjnym i nie ma odpowiednika setLogLevel (ERROR) z Google Analytics. WARN to domyślny poziom rejestrowania. Możesz włączyć logowanie tylko na pojedynczym urządzeniu, uruchamiając polecenie adb na urządzeniu). Pomaga to uniknąć wysyłania aplikacji w środowisku produkcyjnym przy włączonym rejestrowaniu debugowania.

  8. Pakiet SDK Google Analytics na Androida i iOS nie został wycofany i będzie obsługiwany i aktualizowany w najbliższej przyszłości. Nie musisz się od tego odchodzić, jeśli już zainwestowałeś, używając go w swojej aplikacji i spełnia Twoje potrzeby.

djabi
źródło
3
5. Wygląda na to, że korzystanie z niestandardowych pakietów nie jest jeszcze obsługiwane, zgodnie z tymi postami: stackoverflow.com/a/37779048 , stackoverflow.com/a/37511858 . Szkoda.
programista Androida
1
Dziękuję za komentarz. Zmieniono wartość na długą w 5. Nie ma jeszcze automatycznego raportowania dla wszystkich parametrów, ale możesz połączyć konto z BigQuery i użyć go do tworzenia raportów. BigQuery ma wolne miejsce, które może wystarczyć. Abotu 3. Domyślnie raportowanie. 4. Raportowanie ekranu nie jest automatyczne. Musisz zarejestrować zdarzenie podczas wyświetlania treści. 5. Jeśli domyślne raportowanie nie jest wystarczające, możesz przeszukiwać dane w BigQuery. Zawiera nieprzetworzone zdarzenia, gdy je zarejestrowałeś. 6. Powinieneś zignorować app_uninstall. 7. Jeśli włączysz rejestrowanie debugowania na urządzeniu , zobaczysz wszystkie dzienniki.
djabi
1
8. To jest bardzo szeroka kwestia. O jakie konkretne funkcje pytasz. Jeśli Firebase Analytics jest identyczny z Google Analytics, będzie to Google Analytics, a nie Firebase Analytics.
djabi
2
„Przedrostki„ firebase_ ”,„ google_ ”i„ ga_ ”są zarezerwowane i nie należy ich używać.”: Firebase.google.com/docs/reference/cpp/group/parameter-names Moja sugestia zamiast „ga_event” być „abc_event”, gdzie „abc” to akronim oznaczający Ciebie lub Twoją firmę.
KRA2008
5
Wylądowałem tutaj tak, jak jest teraz 2019, a Google wkrótce wycofuje GA na rzecz FA, więc ruch jest obowiązkowy. support.google.com/firebase/answer/9167112
Ryan
13

Google Analytics to bezpłatna usługa analizy sieci oferowana przez Google, która śledzi i raportuje ruch w witrynie. 1 Firma Google uruchomiła usługę w listopadzie 2005 r. Po nabyciu Urchin. Firebase to dostawca usług w chmurze i backend jako firma usługowa z siedzibą w San Francisco w Kalifornii. Firma produkuje szereg produktów dla programistów tworzących aplikacje mobilne lub internetowe.

Jak przejść z Google Analytics do Firebase Analytics?

Google Analytics (GA) i Firebase Analytics (FA), pomimo ich potocznej nazwy, bardzo się różnią pod wieloma względami. Chociaż GA jest narzędziem analitycznym ogólnego przeznaczenia (i bardziej zorientowanym na sieć), Firebase został zbudowany z myślą o urządzeniach mobilnych: w związku z tym zestaw funkcji jest inny między nimi, z niektórymi elementami dodanymi w FA i brakującymi w GA .

Mówiąc dokładniej, rozważając Firebase Analytics, warto zwrócić uwagę na kilka kwestii:

  • Brak widoku w czasie rzeczywistym
  • Wydarzenia są dostępne po 4-6 godzinach
  • Brak przepływu zachowania (z GA)
  • Odbiorcy mają dużą zaletę FA i, w połączeniu z Powiadomieniami, pozwalają na interakcję z określoną grupą użytkowników
  • Podczas korzystania z usługi Firebase Crash Reporting automatycznie tworzona jest grupa odbiorców obejmująca użytkowników, u których wystąpiła awaria
  • Analiza ścieżek ma znacznie więcej sensu niż w GA, ponieważ FA opiera się na zdarzeniach, a nie na wyświetleniach ekranu
  • Bezpłatne i nieograniczone, z wyjątkiem liczby typów wydarzeń (ograniczona do 500); brak ograniczeń co do liczby wydarzeń dla każdego typu
  • Niektóre zdarzenia są rejestrowane automatycznie (tj. Sesje oparte na cyklu życia działania)
  • Stosunkowo niski ślad metod w porównaniu do metod GA
  • Niełatwy w konfiguracji, nie ma singletona do zainicjowania, wystarczy dołączyć zależność Gradle i rozpocząć rejestrowanie zdarzeń
  • Konsola typu wszystko w jednym, jeśli planujesz korzystać z innych usług Firebase

Co do tego, czy należy rozważyć przejście z jednego na drugi, czy też zachować oba równolegle, odpowiedź brzmi: to zależy.

  • Jeśli wcześniej intensywnie korzystałeś z GA, istnieje prawdopodobieństwo, że stracisz część jego funkcji po całkowitym przejściu na FA.
  • Jeśli jednak jest to nowy początek twojego projektu, FA jest znacznie bardziej podatna na wieloplatformowe środowisko mobilne, więc możesz bardzo dobrze traktować to jako własne narzędzie analityczne.

Na marginesie, pamiętaj, że właśnie uruchomiono Firebase, a Google planuje dodanie kolejnych funkcji w nadchodzących tygodniach (np. Pulpit nawigacyjny w czasie rzeczywistym).

Samouczek można znaleźć tutaj https://firebase.google.com/docs/analytics/android/start/

Shubham Sharma
źródło
11
Wylądowałem tutaj tak, jak jest teraz 2019, a Google wkrótce wycofuje GA na rzecz FA, więc ruch jest obowiązkowy. support.google.com/firebase/answer/9167112
Ryan
1
Czy to oznacza, że ​​zamiast Google Analytics musimy używać Firebase Analytics? Mam rację?
Sumit Shukla
@Ryan, święta krowa! Chciałem przejść do Google Analytics z Firebase Analytics, ale Twój komentarz mnie uratował! Dzięki!
Aleksandar