Как перейти с Google-Analytics на Firebase-Analytics?

Фон

В последние месяцы Google опубликовал новую альтернативу Analytics, которая называется Firebase Analytics. ".

Эта проблема

Поскольку в приложении уже есть Google-Analytics, я обнаружил некоторые препятствия, с которыми не могу понять, как лучше всего их решить.

Вопросы

  1. Раньше функции "newTracker" требовался идентификатор свойства. Теперь я этого не вижу. Значит ли это, что он не нужен?

  2. Ранее "enableAdvertisingIdCollection" также был доступен для сбора информации о рекламе. Я не могу найти его в новых API. Собирается ли он автоматически?

  3. «setDryRun» был доступен для отключения отправки данных на серверы, и теперь я его не вижу. Означает ли это, что это происходит автоматически для отладочных версий приложения? Все ли функции пишут в логи?

  4. Раньше я мог отслеживать "экран":

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

    Сейчас я этого не вижу, но, читая, я думаю, что это происходит автоматически, поэтому данные о жизненном цикле активности отправляются в любом случае. Это правда?

  5. Наверное, самое главное: раньше я мог отслеживать по категории, действию, метке и значению:

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

    и теперь я вижу совершенно другой способ отслеживания событий («настраиваемые события»), используя < strong> наборы. Пример:

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

    Как это работает? Как это отображается на веб-сайте Firebase Analytics? Я полагаю, что первый параметр logEvent мог бы вести себя как параметр категории Google-Analytics, но что я могу / должен делать с остальным? Согласно документам, это должно быть нормально:

    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. Какие события на самом деле отслеживаются автоматически (я спрашиваю об этом, потому что некоторые говорят, что мне не следует использовать, здесь)? Включены ли в них покупки? приложение-приглашения? Объявления? Где я могу увидеть их на сайте консоли?

  7. # P12 #
    # P13 # # P14 #
    # P15 #
  8. Должен ли новый SDK заменить Google-Analytics? Предлагается ли полностью перейти на него? Будут ли обновления в Google-Analytics?


person android developer    schedule 20.06.2016    source источник
comment
Зачем голосовать за закрытие? :(   -  person android developer    schedule 20.06.2016
comment
Боковое примечание: я исследовал Firebase Analytics и только что реализовал его в своем приложении, поддерживающем реакцию. Похоже, он переименовывается в Google Analytics для Firebase firebase.google.com/docs/analytics   -  person myself    schedule 21.03.2018
comment
iS GOOGLE Analytics устарела для Интернета?   -  person Ahmad Arslan    schedule 12.10.2018
comment
@AhmadArslan я не знаю   -  person android developer    schedule 12.10.2018


Ответы (2)


Множество вопросов собраны вместе, поэтому я постараюсь кратко ответить на большинство из них:

  1. Отчеты Google Analytics по идентификаторам трекеров, отчеты Firebase Analytics по приложениям. В приложении, определенном в вашем google-services.json, есть только один идентификатор. Идентификатор переводится в строковый ресурс плагином служб Google под именем google_app_id. Все события из приложения сообщаются этому единственному идентификатору.
  2. Firebase Analytics сообщает AdId автоматически. Вам не нужно его включать.
  3. Нет функции dryRun. Вы можете использовать отдельный файл google-services.json во время разработки, отфильтровать разрабатываемую версию с помощью версии приложения или добавить свойство пользователя, чтобы отметить экземпляры приложения, используемые для разработки.
  4. Вы можете сообщить об экранах с помощью

    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. Вы можете зарегистрировать пользовательское событие с теми же параметрами

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

    Префикс "ga_" зарезервирован, и ваша аналитика не сработает, если вы его используете. Вместо этого используйте "xyz_", где xyz - это, например, инициалы вашей компании.

    Не используйте категорию в качестве названия события, если у вас очень мало категорий, которые вы хотите отслеживать. Firebase Analytics поддерживает до 500 имен событий. При регистрации большего количества данных некоторые из ваших данных будут проигнорированы.

  6. Список зарезервированных имен событий находится в начале Класс FirebaseAnalytics.Event. Он примерно представляет автоматические события, о которых сообщают.

  7. По умолчанию в Firebase Analytics ведение журнала отладки отключено. Он регистрирует только ошибки и предупреждения. Если вы не включили ведение журнала отладки и ваше приложение настроено правильно, при запуске приложения в журнал записываются только 2 строки с инструкциями о том, как включить ведение журнала отладки. В производственной среде отключать нечего, и нет эквивалента setLogLevel (ERROR) из Google Analytics. ПРЕДУПРЕЖДЕНИЕ - это уровень ведения журнала по умолчанию. Вы можете включить ведение журнала только на отдельном устройстве, выполнив на нем команду adb). Это поможет вам избежать поставки приложения в производство с включенным ведением журнала отладки.

  8. SDK Google Analytics для Android и iOS не является устаревшим и будет поддерживаться и обновляться в обозримом будущем. Вам не нужно отказываться от него, если вы уже вложили его в свое приложение, и оно соответствует вашим потребностям.

person djabi    schedule 20.06.2016
comment
1. Хорошо, значит, это в файле json. 2. Красиво. 3. Каково поведение по умолчанию? 4. А нужно ли оно уже автоматическое? 5. У нас намного меньше, чем даже 100 категорий, но сейчас я протестировал этот код, и результат на веб-сайте не показывает никакой информации о других материалах, которые я добавил в пакет. Как мне показать эти данные? Отображается только категория. 6. Почему-то app_uninstall равен 0, а app_remove - нет. Какая разница? 7. Это кажется неправильным, потому что я вижу его логи даже в окончательной версии приложения. Как придешь? 8. Будет ли Firebase иметь все свои функции? - person android developer; 21.06.2016
comment
5. Кстати, это значение типа long. - person android developer; 21.06.2016
comment
5. Похоже, что использование настраиваемого пакета еще не поддерживается, согласно этим сообщениям: stackoverflow.com/a/37779048, stackoverflow.com/a/37511858. Очень жаль. - person android developer; 21.06.2016
comment
Спасибо за комментарий. Изменено значение на long в 5. Автоматических отчетов по всем параметрам пока нет, но вы можете связать учетную запись с BigQuery и использовать ее для создания отчетов. В BigQuery есть бесплатная квота, которая может быть всем, что вам нужно. Abotu 3. По умолчанию - отчетность. 4. Сообщения экрана не являются автоматическими. Вам нужно регистрировать событие, когда вы показываете контент. 5. Если отчетов по умолчанию недостаточно, вы можете запросить данные в BigQuery. Он содержит необработанные события в том виде, в котором вы их зарегистрировали. 6. Вы должны игнорировать app_uninstall. 7. Если вы включите ведение журнала отладки на устройстве, вы увидите все журналы. - person djabi; 22.06.2016
comment
8. Это очень широкий вопрос. О каких именно функциях вы спрашиваете. Если Firebase Analytics идентичен Google Analytics, это будет Google Analytics, а не Firebase Analytics. - person djabi; 22.06.2016
comment
3. как проще всего избежать сообщения? Может быть, через код (например, BuildConfig.DEBUG)? 4. Хорошо. 5. Жаль. 6. Что это значит? 7. Это временно? Могу я его отключить? Могу ли я сделать так, чтобы он отображал логи только для отладочных версий приложения? 8. Я хочу знать, смогу ли я заменить Google-Analytics на Firebase-Analytics. Я не знаю обо всех функциях каждого из них, но я хотел бы иметь, по крайней мере, возможность правильно обрабатывать пользовательские события. - person android developer; 23.06.2016
comment
6. Это старая версия события app_remove, которая была заменена. 7. Это временно только для устройства, для которого установлено свойство тега журнала. При перезагрузке устройство возвращается к поведению по умолчанию (регистрируются только ошибки и предупреждения). Вы можете отключить его, установив для свойства значение ERROR или WARN. Как ведение журнала работает в Android, объясняется разработчиком . android.com/reference/android/util/, число) - person djabi; 24.06.2016
comment
6. ок. 7. странно. Почему он недоступен через сам код (включить / отключить журналы API, что в основном полезно, когда вы находитесь в отладочной сборке)? Кстати, ваша ссылка не работает так, как вы планировали. - person android developer; 25.06.2016
comment
Я считаю, что вы можете использовать firebaseAnalytics.setAnalyticsCollectionEnabled(false) как альтернативу dryRun. Подробнее см. Здесь: firebase.google.com/support/guides/disable-analytics - person drees; 06.10.2016
comment
3. Я использую [[FIRAnalyticsConfiguration sharedInstance] setAnalyticsCollectionEnabled:NO];, чтобы отключить сбор журналов. - person Danik; 11.11.2016
comment
Извините, но я не получаю 4. Я добавил это, я вижу отправку этого события в журналах, но не вижу этого события в консоли firebase. Я вижу только app-remove, first_open и session_start. - person Makalele; 15.12.2016
comment
№4. есть метод setCurrentScreen (), но не путайте его с событием, указывающим на текущий экран. Этот метод изменяет неявный параметр, который автоматически добавляет к вашему событию экранное имя. Будет полезно в модели, где у вас 1 Activity и много экранов, например фрагментов. Вы можете прочитать об этом методе здесь: firebase.google. com / docs / reference / android / com / google / firebase / Опять же: не ожидайте увидеть название Activity на панели управления событиями Firebase после выполнения этого метода. Для этого вам понадобится явное событие. - person Kirill Karmazin; 24.02.2017
comment
'Префиксы firebase_, google_ и ga_ зарезервированы и не должны использоваться.': firebase.google.com/docs/reference/cpp/group/parameter-names Мое предложение вместо ga_event было бы abc_event, где abc - это аббревиатура для вас или вашей компании. - person KRA2008; 01.05.2019
comment
Я приземлился здесь, поскольку сейчас 2019 год, и Google скоро откажется от GA в пользу FA, поэтому этот шаг является обязательным. support.google.com/firebase/answer/9167112 - person Ryan; 10.06.2019

Google Analytics - это бесплатная служба веб-аналитики, предлагаемая Google, которая отслеживает и сообщает о посещаемости веб-сайтов. 1 Google запустил службу в ноябре 2005 г. после приобретения Urchin. Firebase - поставщик облачных услуг и серверная часть как сервисная компания, базирующаяся в Сан-Франциско, Калифорния. Компания производит ряд продуктов для разработчиков программного обеспечения, создающих мобильные или веб-приложения.

Как перейти от Google Analytics к Firebase Analytics?

Google Analytics (GA) и Firebase Analytics (FA), несмотря на их общее название, сильно различаются во многих аспектах. В то время как GA является универсальным (и более ориентированным на веб) инструментом аналитики, Firebase была создана с учетом мобильных устройств: поэтому набор функций у них разный, с некоторыми вещами, которые были добавлены в FA, и вещами, которые отсутствуют в GA. .

В частности, при рассмотрении Firebase Analytics следует обратить внимание на следующие моменты:

  • Просмотр в реальном времени отсутствует
  • События доступны через 4-6 часов.
  • Behavior Flow (из GA) отсутствует
  • Аудитории обладают большим преимуществом FA и, в сочетании с уведомлениями, позволяют взаимодействовать с определенной группой пользователей.
  • При использовании Firebase Crash Reporting автоматически создается аудитория с пользователями, у которых произошел сбой.
  • Анализ воронки имеет гораздо больше смысла, чем в GA, поскольку FA основан на событиях, а не на просмотрах экрана.
  • Бесплатно и без ограничений, за исключением количества типов мероприятий (до 500); без ограничений по объему мероприятий по каждому типу
  • Некоторые события регистрируются автоматически (например, сеансы на основе жизненного цикла активности)
  • Относительно небольшой объем используемых методов по сравнению с количеством методов GA
  • Очень легко настроить, нет синглтона для инициализации, просто включите зависимость Gradle и начните регистрацию событий
  • Универсальная консоль, если вы планируете использовать другие службы Firebase

Что касается того, следует ли рассматривать переключение с одного на другой, или если и то, и другое держать параллельно, ответ таков: это зависит.

  • Если вы раньше активно использовали GA, есть вероятность, что вам не хватит некоторых его функций при полном переходе на FA.
  • Однако, если это новый старт для вашего проекта, FA гораздо более склонен к кроссплатформенной мобильной ориентированной среде, поэтому вы вполне можете рассматривать его как свой собственный инструмент аналитики.

Кстати, имейте в виду, что Firebase только что запущена, и Google планирует добавить в ближайшие недели дополнительные функции (например, панель управления в реальном времени).

Для руководства вы можете найти здесь https://firebase.google.com/docs/analytics/android/start/

person Shubham Sharma    schedule 03.07.2016
comment
Я приземлился здесь, поскольку сейчас 2019 год, и Google скоро откажется от GA в пользу FA, поэтому этот шаг является обязательным. support.google.com/firebase/answer/9167112 - person Ryan; 10.06.2019
comment
Значит, это означает, что мы должны использовать Firebase Analytics вместо Google Analytics? Я прав? - person Sumit Shukla; 14.02.2020
comment
@ Райан святая корова! Я хотел перейти в Google Analytics из Firebase Analytics, но ваш комментарий меня спас! Спасибо! - person Aleksandar; 28.02.2020