Измерение просмотров экрана

Google Analytics отслеживает переходы между экранами и прикрепляет информацию о текущем экране к событиям, позволяя отслеживать такие показатели, как вовлечённость пользователя или его поведение на экране. Большая часть этих данных собирается автоматически, но вы также можете вручную регистрировать просмотры экрана. Ручное отслеживание экранов полезно, если ваше приложение не использует отдельные UIViewController , View или Activity для каждого экрана, который вы хотите отслеживать, например, в игре.

Автоматически отслеживать экраны

Analytics автоматически отслеживает некоторую информацию об экранах в вашем приложении, например, имя класса UIViewController или Activity , находящегося в фокусе. При переходе между экранами Analytics регистрирует событие screen_view , идентифицирующее новый экран. События, происходящие на этих экранах, автоматически помечаются параметром firebase_screen_class (например, menuViewController или MenuActivity ) и генерируемым значением firebase_screen_id . Если ваше приложение использует отдельный UIViewController или Activity для каждого экрана, Analytics может автоматически отслеживать каждый переход экрана и формировать отчёт о взаимодействии пользователя с разбивкой по экранам. Если в вашем приложении этого нет, вы всё равно можете получать эти отчёты, вручную регистрируя события screen_view .

Отключить отслеживание просмотра экрана

Автоматические отчеты о просмотре экрана можно отключить на iOS, установив для параметра FirebaseAutomaticScreenReportingEnabled значение NO (логическое значение) в файле Info.plist.

А на Android вставьте следующий параметр в тег <application> файла AndroidManifest.xml :

<meta-data android:name="google_analytics_automatic_screen_reporting_enabled" android:value="false" />

Отслеживать экраны вручную

События screen_view можно регистрировать вручную, независимо от того, включено ли автоматическое отслеживание. Эти события можно регистрировать в методах onAppear или viewDidAppear для платформ Apple и onResume для Android. Если screen_class не задан, Analytics устанавливает значение по умолчанию на основе UIViewController или Activity, находящегося в фокусе в момент вызова.

Если вы отключили свизлинг в своём приложении, все имена экранов необходимо задать вручную. Пользователям SwiftUI следует использовать расширение Analytics Swift SDK .

Быстрый

Примечание: этот продукт Firebase недоступен на целевой платформе macOS.
Analytics.logEvent(AnalyticsEventScreenView,
                   parameters: [AnalyticsParameterScreenName: screenName,
                                AnalyticsParameterScreenClass: screenClass])

Objective-C

Примечание: этот продукт Firebase недоступен на целевой платформе macOS.
[FIRAnalytics logEventWithName:kFIREventScreenView
                    parameters:@{kFIRParameterScreenClass: screenClass,
                                 kFIRParameterScreenName: screenName}];

Kotlin

firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SCREEN_VIEW) {
    param(FirebaseAnalytics.Param.SCREEN_NAME, screenName)
    param(FirebaseAnalytics.Param.SCREEN_CLASS, "MainActivity")
}

Java

Bundle bundle = new Bundle();
bundle.putString(FirebaseAnalytics.Param.SCREEN_NAME, screenName);
bundle.putString(FirebaseAnalytics.Param.SCREEN_CLASS, "MainActivity");
mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.SCREEN_VIEW, bundle);

Web

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

const analytics = getAnalytics();
logEvent(analytics, 'screen_view', {
  firebase_screen: screenName, 
  firebase_screen_class: screenClass
});

Web

firebase.analytics().logEvent('screen_view', {
  firebase_screen: screenName, 
  firebase_screen_class: screenClass
});

Dart

await FirebaseAnalytics.instance.logEvent(
  name: 'screen_view',
  parameters: {
    'firebase_screen': screenName,
    'firebase_screen_class': screenClass,
  },
);