測量屏幕瀏覽量

Google Analytics(分析)追蹤螢幕轉換並將有關當前螢幕的資訊附加到事件中,使您能夠追蹤每個螢幕的用戶參與度或用戶行為等指標。大部分資料收集都是自動發生的,但您也可以手動記錄螢幕視圖。如果您的應用程式沒有為您可能想要追蹤的每個螢幕(例如在遊戲中)使用單獨的UIViewControllerViewActivity ,則手動追蹤螢幕非常有用。

自動追蹤螢幕

Analytics 會自動追蹤有關應用程式中螢幕的一些信息,例如當前焦點的UIViewControllerActivity的類別名稱。發生螢幕轉換時,Analytics 會記錄標識新螢幕的screen_view事件。這些畫面上發生的事件會自動使用參數firebase_screen_class (例如, menuViewControllerMenuActivity )和產生的firebase_screen_id進行標記。如果您的應用程式為每個螢幕使用不同的UIViewControllerActivity ,那麼 Analytics 可以自動追蹤每個螢幕轉換並產生按螢幕細分的用戶參與度報告。如果您的應用程式沒有這樣做,您仍然可以透過手動記錄screen_view事件來取得這些報告。

禁用螢幕視圖追蹤

透過在 Info.plist 中將FirebaseAutomaticScreenReportingEnabled設定為NO (布林值),可以在 iOS 上關閉自動螢幕檢視報告。

在 Android 上,將下列設定嵌套在AndroidManifest.xml檔案的<application>標記中:

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

手動追蹤螢幕

無論是否啟用自動跟踪,您都可以手動記錄screen_view事件。您可以在 Apple 平台的onAppearviewDidAppear方法以及 Android 的onResume中記錄這些事件。如果未設定screen_class ,Analytics 會根據呼叫時處於焦點的 UIViewController 或 Activity 設定預設值。

如果您在應用程式中停用了 swizzling,則必須手動設定所有螢幕名稱。對於 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+KTX

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

網路模組化API

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

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

Web 命名空間 API

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