Firebase Summit에서 발표된 모든 내용을 살펴보고 Firebase로 앱을 빠르게 개발하고 안심하고 앱을 실행하는 방법을 알아보세요. 자세히 알아보기

화면 조회수 측정

Google Analytics는 화면 전환을 추적하고 현재 화면에 대한 정보를 이벤트에 첨부하여 화면당 사용자 참여 또는 사용자 행동과 같은 측정항목을 추적할 수 있습니다. 이 데이터 수집의 대부분은 자동으로 이루어지지만 화면 보기를 수동으로 기록할 수도 있습니다. 수동으로 화면을 추적하는 것은 앱이 게임과 같이 추적하려는 각 화면에 대해 별도의 UIViewController , View 또는 Activity 를 사용하지 않는 경우에 유용합니다.

자동으로 화면 추적

Analytics는 현재 포커스가 있는 UIViewController 또는 Activity 의 클래스 이름과 같은 애플리케이션의 화면에 대한 일부 정보를 자동으로 추적합니다. 화면 전환이 발생하면 Analytics는 새 화면을 식별하는 screen_view 이벤트를 기록합니다. 이러한 화면에서 발생하는 이벤트에는 firebase_screen_class 매개변수(예: menuViewController 또는 MenuActivity )와 생성된 firebase_screen_id 태그가 자동으로 지정됩니다. 앱이 각 화면에 대해 고유한 UIViewController 또는 Activity 를 사용하는 경우 Analytics는 모든 화면 전환을 자동으로 추적하고 화면별로 분류된 사용자 참여 보고서를 생성할 수 있습니다. 앱이 그렇지 않은 경우에도 screen_view 이벤트를 수동으로 기록하여 이러한 보고서를 얻을 수 있습니다.

화면 조회수 추적 비활성화

Info.plist에서 FirebaseAutomaticScreenReportingEnabledNO (부울)로 설정하여 iOS에서 자동 화면 보기 보고를 끌 수 있습니다.

Android에서는 AndroidManifest.xml 파일의 <application> 태그 내에 다음 설정을 중첩합니다.

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

수동으로 화면 추적

자동 추적이 활성화되었는지 여부에 관계없이 screen_view 이벤트를 수동으로 기록할 수 있습니다. Apple 플랫폼의 경우 onAppear 또는 viewDidAppear 메서드와 Android의 경우 onResume 에서 이러한 이벤트를 기록할 수 있습니다. screen_class 가 설정되지 않은 경우 Analytics는 호출 시 포커스가 되는 UIViewController 또는 Activity를 기반으로 기본값을 설정합니다.

앱에서 스위즐링을 비활성화한 경우 모든 화면 이름을 수동으로 설정해야 합니다. SwiftUI 사용자의 경우 Analytics Swift 확장 SDK 를 사용하십시오.

빠른

참고: 이 Firebase 제품은 macOS 대상에서 사용할 수 없습니다.
Analytics.logEvent(AnalyticsEventScreenView,
                   parameters: [AnalyticsParameterScreenName: screenName,
                                AnalyticsParameterScreenClass: screenClass])

오브젝티브-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,
  },
);