Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

測量屏幕瀏覽量

透過集合功能整理內容 你可以依據偏好儲存及分類內容。

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}];

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

Kotlin+KTX

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

Web version 9

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

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

Web version 8

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