# Firebase 프로젝트·앱 등록

Firebase 콘솔에서 프로젝트를 만들고 Android/iOS 앱을 등록한 뒤 google-services.json·GoogleService-Info.plist 설정 파일을 내려받아 배치하는 절차.

- 카테고리: Firebase
- 소요 시간: 약 8분
- 난이도: 중간
- 업데이트: 2026.06.16
- 원문: /wiki/playbook/firebase-checklist/how-to-create-firebase-app

## 목차

- [이 문서의 목적](#purpose)
- [1단계 · Firebase 프로젝트 생성](#step-1)
- [2단계 · Android 앱 등록](#step-2)
- [3단계 · iOS 앱 등록](#step-3)
- [4단계 · 설정 파일 배치](#step-4)
- [5단계 · GA4 연결 확인](#step-5)
- [참고 링크](#references)
- [자주 묻는 질문](#faq)

이 문서는 Firebase 콘솔에서 프로젝트를 만들고 Android·iOS 앱을 등록한 뒤, 앱이 Firebase와 통신하는 데 필요한 설정 파일(`google-services.json`, `GoogleService-Info.plist`)을 내려받아 프로젝트에 배치하는 절차를 다룹니다. SDK 의존성 추가와 초기화 코드는 다음 글 [SDK 초기화](/wiki/playbook/firebase-checklist/how-to-initialize-firebase-sdk)에서 이어집니다.

> **이 문서 핵심**
>
> - 대상은 WebView 래퍼 sample app이며, Android applicationId와 iOS Bundle ID를 각각 Firebase 앱 식별자로 등록합니다.
>
> - Firebase 콘솔에 접근 가능한 Google 계정과 앱의 패키지명/번들 ID를 알고 있어야 합니다.
>
> - 완료 후 Android·iOS 앱 각각에 Firebase 설정 파일이 배치되고, Firebase 프로젝트가 GA4 속성과 연결됩니다.

> **정보**
>
> Firebase 프로젝트를 만들 때 Google Analytics를 활성화하면 Firebase Analytics 데이터가 자동으로 연결된 GA4 속성으로 흘러갑니다. WebView 앱이라도 웹용 스니펫이 아니라 **Android/iOS 앱 SDK** 기준으로 등록합니다.

## 1단계. Firebase 콘솔에서 프로젝트 생성

[Firebase 콘솔](https://console.firebase.google.com/)에 로그인한 뒤 프로젝트 추가를 눌러 새 프로젝트를 만듭니다. 프로젝트 이름을 입력하고, **이 프로젝트에 Google Analytics 사용 설정** 토글을 켜둔 채로 진행해야 이벤트가 GA4로 적재됩니다. 이미 운영 중인 광고주 Firebase 프로젝트가 있다면 새로 만들지 말고 기존 프로젝트에 앱만 추가합니다.

![Firebase 콘솔 '프로젝트 만들기' 첫 화면. '프로젝트 이름을 지정하여 시작하기' 제목 아래 프로젝트 이름 입력칸에 hurdlers-firebase-guide 가 입력되어 있고, 그 입력 영역이 빨간 박스로 강조되어 있다. 아래에는 프로젝트 ID 칩과 '계속' 버튼이 있다.](/wiki-assets/playbook/how-to-create-firebase-app/01-create-project-name.png)

> **화면 1.** 프로젝트 이름(`hurdlers-firebase-guide`)을 입력하는 1단계.

![Firebase 프로젝트 생성 마법사의 'Firebase 프로젝트를 위한 Google 애널리틱스' 화면. 하단의 '이 프로젝트에서 Google 애널리틱스 사용 설정' 토글이 켜진(파란색 체크) 상태이며, 그 토글 스위치가 빨간 박스로 강조되어 있다.](/wiki-assets/playbook/how-to-create-firebase-app/02-enable-google-analytics.png)

> **화면 2.** Google 애널리틱스 사용 설정 토글을 켠 상태로 진행.

![Firebase 프로젝트 개요 화면. 프로젝트 이름 hurdlers-firebase-guide 제목 바로 아래에 '+ 앱 추가' 버튼이 빨간 박스로 강조되어 있고, 아래로는 Gemini 추천 다음 단계 카드들이 나열되어 있다.](/wiki-assets/playbook/how-to-create-firebase-app/03-project-overview.png)

> **화면 3.** 프로젝트 개요의 *+ 앱 추가* 버튼으로 플랫폼별 앱을 등록.

> **주의**
>
> Google Analytics 사용 설정을 끄고 프로젝트를 만들면 Firebase Analytics 이벤트가 GA4로 흘러가지 않습니다. 끈 채로 만들었다면 프로젝트 설정 → 통합에서 Google Analytics를 나중에 연결할 수 있지만, 처음부터 켜는 것을 권장합니다.

## 2단계. Android 앱 등록과 google-services.json 다운로드

프로젝트 개요 화면에서 Android 아이콘을 클릭해 앱을 등록합니다.**Android 패키지 이름**에는 앱의 `applicationId`를 정확히 입력합니다. sample app 예시로는 `kr.hurdlers.appbuilder`입니다. 패키지명이 한 글자라도 다르면 설정 파일이 매칭되지 않아 초기화에 실패합니다.

**app/build.gradle.kts · applicationId 확인**
```kotlin
android {
    defaultConfig {
        applicationId = "kr.hurdlers.appbuilder"
    }
}
```

앱 닉네임과 디버그 서명 인증서 SHA-1은 선택값입니다. Google 로그인이나 Dynamic Links를 쓰지 않는 단순 분석 연동에서는 SHA-1 없이 진행해도 됩니다. 등록을 마치면 **`google-services.json`** 파일을 내려받습니다.

![Firebase 'Android 앱에 Firebase 추가' 1단계 앱 등록 화면. 'Android 패키지 이름' 입력칸에 kr.hurdlers.appbuilder 가 입력되어 있고 그 입력칸이 빨간 박스로 강조되어 있다. 아래에는 앱 닉네임(선택사항) 칸과 '앱 등록' 버튼이 있다.](/wiki-assets/playbook/how-to-create-firebase-app/04-android-register-package.png)

> **화면 4.** Android 패키지 이름(`kr.hurdlers.appbuilder`) 입력.

![Firebase Android 앱 등록 2단계 '구성 파일 다운로드 후 추가' 화면. 'google-services.json 다운로드' 파란 버튼이 빨간 박스로 강조되어 있고, 우측에는 다운로드한 파일을 프로젝트 루트(app 모듈)에 배치하는 안내 일러스트가 있다.](/wiki-assets/playbook/how-to-create-firebase-app/05-android-download-json.png)

> **화면 5.** `google-services.json` 다운로드.

## 3단계. iOS 앱 등록과 GoogleService-Info.plist 다운로드

프로젝트 개요에서 iOS+ 아이콘을 클릭해 iOS 앱을 등록합니다.**Apple 번들 ID**에는 Xcode의 `PRODUCT_BUNDLE_IDENTIFIER`를 입력합니다. sample app 예시로는 Android와 동일하게 `kr.hurdlers.appbuilder`입니다. 등록을 마치면 **`GoogleService-Info.plist`** 파일을 내려받습니다.

![Firebase 콘솔의 'Apple 앱에 Firebase 추가' 화면. 1단계 앱 등록 폼에서 Apple 번들 ID 입력칸에 kr.hurdlers.appbuilder 가 입력되어 있고, 이 입력칸이 빨간 박스로 강조되어 있다. 아래에는 앱 닉네임(Hurdlers Sample (iOS))과 App Store ID 칸, '앱 등록' 버튼이 있다.](/wiki-assets/playbook/how-to-create-firebase-app/06-ios-register-bundle.png)

> **화면 6.** iOS 앱 등록 1단계 — **Apple 번들 ID** 칸에 `kr.hurdlers.appbuilder` 입력.

![Firebase 콘솔의 iOS 앱 등록 화면. 1단계 입력 항목이 비활성화되어 앱 등록이 완료된 상태이며, 2단계 '구성 파일 다운로드' 단계가 빨간 박스로 강조되어 있다. 여기에서 GoogleService-Info.plist 파일을 내려받는다.](/wiki-assets/playbook/how-to-create-firebase-app/07-ios-download-plist.png)

> **화면 7.** 2단계 **구성 파일 다운로드**에서 `GoogleService-Info.plist` 내려받기.

> **정보**
>
> Xcode 번들 ID는 프로젝트 → TARGETS → General → Identity의 Bundle Identifier에서 확인합니다. Debug/Release 빌드 구성에 따라 접미사(`.debug` 등)가 붙는 경우, Firebase에는 운영 빌드에 실제로 쓰이는 번들 ID를 등록합니다.

## 4단계. 설정 파일을 프로젝트에 배치

내려받은 두 파일은 각 플랫폼의 정해진 위치에 둬야 SDK가 빌드 시점에 인식합니다. 위치가 틀리면 빌드는 되더라도 런타임에 Firebase가 초기화되지 않습니다.

### Android — `google-services.json`

앱 모듈 루트(`app/`)에 둡니다. 프로젝트 루트가 아니라 **app 모듈 디렉터리**입니다.

**Android 파일 위치**
```text
<project-root>/
└─ app/
   ├─ build.gradle.kts
   └─ google-services.json   ← 여기
```

### iOS — `GoogleService-Info.plist`

Xcode에서 앱 타겟에 드래그해 추가하고, **Copy items if needed**를 체크하고 타겟 멤버십에 포함시킵니다. Finder로만 폴더에 복사하면 번들에 포함되지 않아 런타임에 파일을 찾지 못합니다.

**iOS 파일 위치**
```text
<project-root>/ios/
└─ YourApp/
   ├─ Info.plist
   └─ GoogleService-Info.plist   ← 타겟 멤버십 포함
```

![설정 파일 배치 설명 이미지. 왼쪽에는 Android 프로젝트 트리에서 app 폴더 아래 google-services.json 파일이 빨간 박스로 강조되어 있고, 오른쪽에는 iOS 파일 추가 체크리스트에서 GoogleService-Info.plist, Copy items if needed, Target Membership: SampleApp 항목이 빨간 박스로 강조되어 있다.](/wiki-assets/playbook/how-to-create-firebase-app/08-config-file-placement.png)

> **화면 8.** 설정 파일 배치 예시 — Android는 `app/` 아래, iOS는 Xcode에서 파일 추가와 타겟 멤버십 체크.

> **주의**
>
> `google-services.json`과 `GoogleService-Info.plist`에는 API 키가 포함됩니다. 이 키는 클라이언트에 노출되는 것을 전제로 한 값이라 앱 바이너리에 포함되는 것은 정상이지만, 공개 저장소에 무심코 커밋하지 않도록 저장소 정책을 확인하세요.

## 5단계. GA4 속성 연결 확인

Firebase 콘솔의 프로젝트 설정 → 통합 → Google Analytics에서 연결된 GA4 속성과 데이터 스트림을 확인합니다. Firebase가 자동 생성한 GA4 속성을 광고주가 이미 운영 중인 GA4와 합치고 싶다면, 기존 GA4 속성에 앱 데이터 스트림을 추가하고 Firebase를 그 속성에 연결하는 방식을 검토합니다.

![Firebase 콘솔의 '프로젝트 설정 → 통합' 탭 화면. 통합 카드 그리드 좌측 상단의 Google Analytics 카드가 빨간 박스로 강조되어 있고, 카드 안에는 '사용 설정됨' 상태 표시와 '관리' 링크가 보여 GA4(Google Analytics) 가 이미 연결되어 있음을 나타낸다. 옆에는 AdMob, Google Ads, BigQuery 등 다른 통합 카드가 함께 배치되어 있다.](/wiki-assets/playbook/how-to-create-firebase-app/09-ga4-integration.png)

> **화면 9.** 프로젝트 설정 → 통합 탭에서 Google Analytics 카드가 `사용 설정됨` 상태로 GA4 속성에 연결된 모습. '관리'를 눌러 연결된 GA4 속성과 데이터 스트림을 확인할 수 있습니다.

> **팁**
>
> 앱·설정 파일 준비가 끝나면 다음 단계는 [SDK 초기화](/wiki/playbook/firebase-checklist/how-to-initialize-firebase-sdk)입니다. 이미 광고주 GA4와의 연결 설정이 필요하다면 GA4 설정 가이드의[Firebase 연동](/wiki/playbook/ga4-setup-checklist/how-to-link-ga4-with-firebase) 글도 함께 확인합니다.

## 참고 링크

- [Firebase 콘솔](https://console.firebase.google.com/)
- [Firebase Android 프로젝트 설정 가이드](https://firebase.google.com/docs/android/setup)
- [Firebase iOS 프로젝트 설정 가이드](https://firebase.google.com/docs/ios/setup)
- [Google Analytics for Firebase 시작하기(Android)](https://firebase.google.com/docs/analytics/get-started?platform=android)
- [Google Analytics for Firebase 시작하기(iOS)](https://firebase.google.com/docs/analytics/get-started?platform=ios)

## 자주 묻는 질문

### WebView 앱인데 웹 앱이 아니라 Android/iOS 앱으로 등록하는 게 맞나요?

네. WebView 안에서 발생한 행동도 앱 SDK로 수집하므로 Android/iOS 앱으로 등록합니다. 웹용 Firebase 스니펫은 별도 웹사이트 측정용이라 WebView 래퍼 앱 분석에는 사용하지 않습니다.

### Android 패키지 이름과 iOS 번들 ID가 같아도 되나요?

됩니다. Firebase는 Android와 iOS 앱을 플랫폼별로 별도 관리하므로, sample app처럼 두 플랫폼 식별자를 동일한 문자열로 쓰더라도 충돌하지 않습니다.

### 설정 파일을 받았는데 패키지명을 잘못 넣었습니다. 다시 받아야 하나요?

패키지명/번들 ID가 틀렸다면 콘솔에서 해당 앱을 삭제하고 올바른 식별자로 다시 등록한 뒤 설정 파일을 새로 내려받습니다. 설정 파일 안의 식별자와 실제 앱 식별자가 일치해야 초기화가 됩니다.

### SHA-1 인증서를 꼭 등록해야 하나요?

단순 Analytics 연동만이라면 필수가 아닙니다. Google 로그인, Dynamic Links 등 특정 기능을 쓸 때만 필요합니다.

## Navigation

- [전체 플레이북 Markdown sitemap](/wiki/playbook/sitemap.md)

### Firebase

- [Firebase](/wiki/playbook/firebase-checklist)
- [Firebase 프로젝트·앱 등록](/wiki/playbook/firebase-checklist/how-to-create-firebase-app) (현재 문서)
- [Firebase SDK 초기화](/wiki/playbook/firebase-checklist/how-to-initialize-firebase-sdk)
- [Firebase WebView 이벤트 연동](/wiki/playbook/firebase-checklist/how-to-connect-firebase-webview-events)
- [Firebase 이벤트 전송](/wiki/playbook/firebase-checklist/how-to-send-firebase-events)
- [Firebase User ID·User Property 설정](/wiki/playbook/firebase-checklist/how-to-set-firebase-user-properties)
- [Firebase 연동 검증](/wiki/playbook/firebase-checklist/how-to-verify-firebase-integration)
