Начало работы с Google Аналитикой


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

Google Analytics собирает данные об использовании и поведении вашего приложения. SDK регистрирует два основных типа информации:

  • События: что происходит в вашем приложении, например действия пользователя, системные события или ошибки.
  • Свойства пользователя: атрибуты, которые вы определяете для описания сегментов вашей пользовательской базы, например языковые предпочтения или географическое местоположение.

Analytics автоматически регистрирует некоторые события и свойства пользователя ; вам не нужно добавлять какой-либо код, чтобы включить их.

Прежде чем начать

Если вы еще этого не сделали, добавьте Firebase в свой проект JavaScript и убедитесь, что в вашем проекте Firebase включен Google Analytics :

  • Если вы создаете новый проект Firebase, включите Google Analytics во время процесса создания проекта.

  • Если вы используете существующий проект Firebase, в котором не включен Google Analytics , перейдите на вкладку «Интеграции» вашего проекта. > Настройки проекта , чтобы включить эту функцию.

При включении Google Analytics в вашем проекте ваши веб-приложения Firebase связываются с потоками данных Google Analytics связанными со свойством App + Web .

Добавьте Analytics SDK в свое приложение

В зависимости от того, как размещено ваше веб-приложение, конфигурация может обрабатываться автоматически, или вам может потребоваться обновить объект конфигурации Firebase . Если ваше веб-приложение уже использует Google Analytics, вам может потребоваться дополнительная настройка, описанная в разделе Использование Firebase с существующими тегами gtag.js.

  1. Убедитесь, что объект конфигурации Firebase в вашем коде содержит measurementId . Этот идентификатор автоматически создаётся при включении Analytics в проекте Firebase и регистрации веб-приложения и необходим для использования Analytics .

    • Если ваше приложение использует Firebase Hosting и зарезервированные URL-адреса для Firebase SDK :

      Firebase автоматически настраивает ваше приложение. Для завершения настройки добавьте скрипты из карточки «Ваши приложения» в настройках проекта в тег <body> вашего приложения, если вы ещё этого не сделали.

    • Если ваше приложение не использует зарезервированные URL-адреса : если вы работаете с существующим веб-приложением , обновите объект конфигурации Firebase в коде, чтобы убедиться, что поле measurementId присутствует. Объект конфигурации должен выглядеть примерно так, как показано в следующем примере:

      // For Firebase JavaScript SDK v7.20.0 and later, `measurementId` is an optional field
      const firebaseConfig = {
        apiKey: "API_KEY",
        authDomain: "PROJECT_ID.firebaseapp.com",
        databaseURL: "https://PROJECT_ID.firebaseio.com",
        projectId: "PROJECT_ID",
        storageBucket: "PROJECT_ID.firebasestorage.app",
        messagingSenderId: "SENDER_ID",
        appId: "APP_ID",
        measurementId: "G-GA_MEASUREMENT_ID"
      };
      
  2. Если вы еще этого не сделали, установите Firebase JS SDK и инициализируйте Firebase .

  3. Добавьте Analytics JS SDK и инициализируйте Analytics :

Web

import { initializeApp } from "firebase/app";
import { getAnalytics } from "firebase/analytics";

// TODO: Replace the following with your app's Firebase project configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
  // ...
};

// Initialize Firebase
const app = initializeApp(firebaseConfig);


// Initialize Analytics and get a reference to the service
const analytics = getAnalytics(app);

Web

import firebase from "firebase/compat/app";
import "firebase/compat/analytics";

// TODO: Replace the following with your app's Firebase project configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
  // ...
};

// Initialize Firebase
firebase.initializeApp(firebaseConfig);


// Initialize Analytics and get a reference to the service
const analytics = firebase.analytics();

Используйте Firebase с существующими тегами gtag.js

Если ранее в вашем приложении был запущен Google Analytics с использованием фрагмента gtag.js , вашему приложению может потребоваться дополнительная настройка, если вы планируете выполнить одно из следующих действий:

  • Добавьте вызовы Google Analytics из Firebase на страницу, но также планируйте продолжить использовать вызовы gtag() непосредственно на той же странице.
  • Хотите использовать один и тот же идентификатор измерения для прямых вызовов gtag() и данных Google Analytics отправляемых в Firebase.

Чтобы гарантировать, что ваши события будут доступны для использования всеми службами Firebase, выполните следующие дополнительные шаги по настройке:

  • Удалите строку gtag('config', ' GA_MEASUREMENT_ID '); где GA_MEASUREMENT_ID — это measurementId вашего веб-приложения Firebase. Если на странице есть другие идентификаторы для других свойств Analytics, удалять строку конфигурации не нужно.
  • Обязательно вызовите firebase.analytics() перед отправкой любых событий с помощью gtag() .

В противном случае события, отправленные на этот идентификатор с помощью вызовов gtag() не будут связаны с Firebase и не будут доступны для таргетинга в других службах Firebase.

Начать регистрацию событий

После инициализации службы Analytics вы можете начать регистрировать события с помощью метода logEvent() .

Некоторые события рекомендуются для всех приложений , другие — для определённых типов бизнеса или отраслей. Рекомендуем отправлять предлагаемые события вместе с заданными параметрами, чтобы обеспечить максимальную детализацию отчётов и использовать будущие функции и интеграции по мере их появления. В этом разделе описывается регистрация предопределённого события. Подробнее о регистрации событий см. в разделе «Журнал событий» .

В следующем примере показано, как регистрировать рекомендуемое событие, указывающее на то, что пользователь получил уведомление в вашем приложении:

Web

import { getAnalytics, logEvent } from "firebase/analytics";

const analytics = getAnalytics();
logEvent(analytics, 'notification_received');

Web

firebase.analytics().logEvent('notification_received');

Следующие шаги