저는 Android 개발을 공부하기 때문에 Google Analytics를 Firebase를 활용하여 앱에 적용시켜보려 합니다.
애널리틱스는 Firebase 전체 기능에 통합되어 Firebase SDK를 사용하여 적용시킬 수 있습니다. 최대 500개의 고유한 이벤트에 대한 무제한 보고를 제공하고, 애널리틱스 보고서는 사용자의 행동을 이해하여 정보에 기반한 앱 마케팅 및 실적 극대화 결정을 내릴 수 있도록 합니다.
주요 기능
기능 | 설명 |
무제한 보고 | 애널리틱스는 최대 500개의 고유 이벤트에 관한 무제한 보고를 제공합니다. |
잠재고객 분류 | Firebase Console에서 기기 데이터, 맞춤 이벤트 또는 사용자 속성을 기준으로 커스텀 잠재고객을 정의할 수 있습니다. 이러한 잠재고객은 새로운 기능이나 알림 메시지를 타겟팅할 때 다른 Firebase 기능과 함께 사용할 수 있습니다. |
원리
이전 포스팅에서 정리한 것처럼, GA로 사람들이 웹, 앱 등의 사용하는 방식을 파악할 수 있습니다. 다양한 이벤트와 사용자 속성을 SDK가 자동으로 포착하여 개발자는 맞춤 이벤트를 직접 정의하여 비즈니스에 활용할 수 있습니다.
수집된 데이터는 Firebase Console의 대시보드에서 확인할 수 있고, 이러한 대시보드는 활성 사용자 수 및 인구통계와 같은 요약 데이터부터 상세 데이터까지 데이터에 대한 세부 통계를 제공합니다.
이렇게 수집된 정보를 앱 마케팅에 활용합니다.
다른 서비스와 통합
서비스 | 설명 |
BigQuery | Firebase 앱을 BigQuery에 연결하면 전체 애널리틱스 데이터 세트에 대한 커스텀 분석을 수행하고 다른 데이터 소스를 가져올 수 있습니다. |
Crashlytics | 애널리틱스는 각 비정상 종료 이벤트를 로깅하므로 버전별 또는 리전별로 비정상 종료 발생률을 확인하여 영향을 받은 사용자를 파악할 수 있습니다. |
FCM | 애널리틱스는 알림 작성기를 통해 전송한 알림 메시지에 해당하는 이벤트를 자동으로 기록하고 각 캠페인의 효과에 관한 보고서를 제공합니다. |
Firebase 원격 구성 | 앱의 여러 버전을 배포할 필요 없이 애널리틱스 잠재고객 정의를 사용하여 잠재고객별로 앱의 동작과 모양에 변화를 줄 수 있습니다. |
Google 태그 관리자 | Google 애널리틱스와 Google 태그 관리자를 통합하면 앱을 배포한 후 웹 인터페이스를 통해 애널리틱스 구현을 원격으로 관리할 수 있습니다. |
GA 적용하기
Google Analytics는 앱의 사용량과 행동 데이터를 수집하는데, SDK는 아래의 두 가지 기본정보를 로깅합니다.
- 이벤트 : 사용자 행동, 시스템 이벤트, 오류 등 앱에서 발생하는 상황
- 사용자 속성 : 사용자층을 나눈 세그먼트를 기술하고자 개발자가 정의하는 언어 환경설정, 지리적 위치 등의 속성
Analytics는 이벤트와 사용자 속성을 자동으로 로깅하며 별도의 코드 없이 위의 속성을 사용 설정할 수 있습니다.
또한, Android 프로젝트에 Firebase를 추가하지 않은 경우 추가하여 Firebase 프로젝트에서 Google Analytics 사용 설정을 해야 합니다.
아래의 링크를 참고하여 프로젝트를 추가할 수 있습니다.
https://firebase.google.com/docs/android/setup?hl=ko
Android 프로젝트에 Firebase 추가 | Android용 Firebase
5월 10일, Google I/O에서 Firebase가 돌아옵니다. 지금 등록하기 의견 보내기 Android 프로젝트에 Firebase 추가 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 기본
firebase.google.com
Firebase에 프로젝트를 추가했다면, 왼쪽 패널에 설정 > 프로젝트 설정에 들어가 google-services.json 파일을 다운로드하여 프로젝트에 설치해줍니다.
앱에 Analytics SDK 추가
build.gradle (Module) - Android 라이브러리의 종속 항목 추가
dependencies {
// Import the BoM for the Firebase platform
implementation platform('com.google.firebase:firebase-bom:31.4.0')
// Add the dependency for the Analytics library
// When using the BoM, you don't specify versions in Firebase library dependencies
implementation 'com.google.firebase:firebase-analytics-ktx'
}
MainActivity - Activity에서 FirebaseAnalytics 객체를 선언
private lateinit var firebaseAnalytics: FirebaseAnalytics
//onCreate
firebaseAnalytics = Firebase.analytics
MainActivity - 이벤트 로깅
firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM) {
param(FirebaseAnalytics.Param.ITEM_ID, id)
param(FirebaseAnalytics.Param.ITEM_NAME, name)
param(FirebaseAnalytics.Param.CONTENT_TYPE, "image")
}
기존의 GA3(UA) 방식은 Category, Action, label로만 수집가능하나, GA4는 GA3처럼 고정된 방식도 있고, Custom 방식도 가능해졌습니다. Custom 방식에 대한 설명은 아래 링크를 참고하면 좋을 것 같습니다.
https://firebase.google.com/docs/analytics/events?hl=ko&platform=android
이벤트 로깅 | Firebase용 Google 애널리틱스
5월 10일, Google I/O에서 Firebase가 돌아옵니다. 지금 등록하기 의견 보내기 이벤트 로깅 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. iOS+ Android 웹 Flutter 이 가
firebase.google.com
아래는 제가 직접 Analytics를 연결한 대시보드 예시입니다. 이런 식이 구나 정도로만 참고하면 좋을 듯합니다.
참고 링크
Google 애널리틱스 시작하기 | Firebase용 Google 애널리틱스
5월 10일, Google I/O에서 Firebase가 돌아옵니다. 지금 등록하기 의견 보내기 Google 애널리틱스 시작하기 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. iOS+ Android
firebase.google.com