아래에서 찾을 수 없는 다른 문제나 어려운 점이 있으신가요? 버그를 신고하거나 기능을 요청하고 Stack Overflow 토론에 참여하세요.
Firebase로 업그레이드
기존 Google 프로젝트에 Firebase를 어떻게 추가하나요?
Google Cloud Console 또는 Google API 콘솔을 통해 관리하는 기존 프로젝트가 있을 수 있습니다. 기본적으로 이러한 프로젝트는 Firebase Console에 표시되지만 Firebase 프로젝트로 간주되지는 않습니다.
기존 프로젝트에 Firebase를 추가하려면 Firebase Console 방문 페이지에서 프로젝트 추가를 클릭한 후 프로젝트 이름 메뉴에서 프로젝트를 선택합니다.
프로젝트 및 Firebase Console
Firebase 프로젝트란?
프로젝트는 OS, Android 및 웹의 여러 앱을 보관할 수 있는 공간입니다. 교차 플랫폼 앱 사이에서 데이터베이스, 구성, 알림 등의 기능 공유를 지원합니다.
한 프로젝트에 iOS, Android, 웹 앱 변형 버전을 추가해야 합니다. 여러 프로젝트를 사용하여 개발, 스테이징, 프로덕션 등의 여러 환경을 지원할 수 있습니다.
계정당 프로젝트를 몇 개까지 포함할 수 있나요?
- 무료 등급 Spark 요금제 — 프로젝트 할당량은 소수의(대개 약 5~10) 프로젝트로 제한됩니다.
- 유료 요금제 — Cloud 결제 계정이 양호한 상태인 경우 결제 계정당 프로젝트 할당량은 상당히 증가합니다.
대부분의 개발자에게 프로젝트 할당량 한도는 문제가 되지 않지만 필요한 경우 프로젝트 할당량 증가를 요청할 수 있습니다.
프로젝트를 완전히 삭제하는 데는 30일이 걸리며 완전히 삭제되기 전에는 할당량에 포함된다는 점에 유의하세요.
프로젝트에 Firebase 앱을 몇 개까지 포함할 수 있나요?
프로젝트는 OS, Android 및 웹의 여러 앱을 보관할 수 있는 공간입니다. 프로젝트 내에 보관되는 앱 수에는 제한이 없지만 앱을 추가하면 1개 이상의 기본 OAuth 2.0 클라이언트 ID가 생성될 수 있습니다. 한 프로젝트 내에서 생성할 수 있는 클라이언트 ID의 한도는 약 30개입니다.
프로젝트 내에 있는 모든 앱은 최종 사용자의 관점에서 동일한 애플리케이션의 플랫폼 변형 버전이어야 합니다. 예를 들어 화이트 라벨 애플리케이션을 개발하는 경우 독립적으로 라벨이 지정된 앱마다 자체 Firebase 프로젝트가 있어야 합니다.
Android 앱을 추가할 때 SHA-1을 제공해야 하나요?
SHA-1 정보는 Firebase 인증(Google 로그인 또는 전화번호 로그인을 사용하는 경우) 및 Firebase 동적 링크에 필요합니다. 이러한 기능을 사용하지 않는 경우 SHA-1을 제공할 필요가 없습니다.
'다른 프로젝트에 이미 패키지 이름과 SHA-1이 동일한 OAuth2 클라이언트가 있습니다.'라는 오류를 어떻게 해결하나요?
이 오류는 지정된 패키지 이름과 SHA-1을 갖는 OAuth 2.0 클라이언트 ID가 다른 Firebase 또는 Google 클라우드 프로젝트에 포함된 사실이 감지될 때 발생합니다. 여기 있는 안내에 따라 이 오류를 해결할 수 있습니다.
Firebase Console 언어는 어떻게 결정되나요?
Firebase Console의 언어 설정은 '계정 환경설정' > '언어 및 입력기' 아래의 Google 계정 설정에서 선택한 언어를 기준으로 합니다.
Firebase Console에서 제공하는 언어는 다음과 같습니다.
- 영어
- 포르투갈어(브라질)
- 프랑스어
- 독일어
- 인도네시아어
- 일본어
- 한국어
- 러시아어
- 중국어 간체
- 스페인어
- 중국어 번체
Firebase Console에서 지원하는 역할과 권한은 무엇인가요?
Firebase Console 및 Google Cloud Console은 같은 기본 역할 및 권한을 사용합니다. Firebase IAM 문서에서 역할과 권한에 대해 자세히 알아보세요.
Firebase는 소유자, 편집자, 뷰어의 기본 역할을 지원합니다.
- 프로젝트 소유자는 프로젝트에 다른 구성원을 추가하고 통합(BigQuery 또는 Slack과 같은 서비스에 프로젝트 연결)을 설정할 수 있으며 프로젝트에 대한 전체 수정 액세스 권한을 보유합니다.
- 프로젝트 편집자는 프로젝트에 대한 전체 수정 액세스 권한을 보유합니다.
- 프로젝트 뷰어는 프로젝트에 대한 읽기 액세스 권한만 보유합니다. 현재 UI에서는 프로젝트 뷰어가 편집 UI 컨트롤을 볼 수 있고 컨트롤이 사용 설정된 것으로 나타나지만 뷰어 역할이 있는 사용자는 수정 작업을 수행할 수 없습니다.
Firebase는 다음 역할도 지원합니다.
- Firebase 사전 정의된 역할 - 소유자, 편집자, 뷰어의 기본 역할보다 더욱 세부적으로 액세스를 제어할 수 있는 선별된 Firebase 전용 역할입니다.
- 커스텀 역할 - 조직의 구체적인 요구사항에 맞춰 특정 권한을 보유하도록 완전히 맞춤설정된 IAM 역할입니다.
Play/AdMob/애드워즈/BigQuery를 Firebase 프로젝트에 연결하기 위한 기본 요건은 무엇인가요?
- Play 계정을 연결하려면 Firebase 프로젝트 소유자이면서 동시에 Play 계정 소유자여야 합니다.
- AdMob 앱을 연결하려면 Firebase 프로젝트 소유자이면서 동시에 AdMob 관리자여야 합니다.
- 애드워즈 계정을 연결하려면 Firebase 프로젝트 소유자이면서 동시에 애드워즈 관리자여야 합니다.
- BigQuery 프로젝트를 연결하려면 Firebase 프로젝트 소유자여야 합니다.
Firebase Console에 액세스하는 데 지원되는 브라우저는 무엇인가요?
Chrome, Firefox, Safari, Edge 등 널리 사용되는 최신 버전의 데스크톱 브라우저에서 Firebase 콘솔에 액세스할 수 있습니다. 모바일 브라우저는 현재 완벽하게 지원되지는 않습니다.
앱에 어떤 오픈소스 알림을 포함해야 하나요?
iOS의 경우 Firebase pod에 관련 항목을 포함하는 NOTICES 파일이 있습니다. Android SDK에는 라이선스 정보 표시를 위한 헬퍼 활동이 있습니다.
Firebase에서 지원하는 Xcode 버전은 무엇인가요?
Firebase는 Apple에서 더 이상 지원하지 않는 버전의 Xcode를 제외하고 주요 Xcode 버전을 최대 2개 지원하고 있습니다. 예를 들어 2019년 3월부터 Apple에서는 모든 iOS 앱에 iOS 12 이상을 요구할 예정이므로 그에 따라 Xcode 9 지원이 중단되고 Xcode 10이 유일하게 지원되는 주 버전이 될 것입니다.
Xcode의 특정 부 버전 또는 패치 버전(예: 9.2.0~9.4.1)에 대한 지원의 변경 여부는 Firebase iOS SDK의 필요성과 개발자 사용 설문조사를 바탕으로 결정됩니다. 이 같은 변경사항은 Firebase iOS SDK 출시 노트 및 Firebase iOS SDK 설정 페이지에 반영됩니다.
Firebase iOS SDK에서 지원하는 최소 Xcode 버전은 iOS 프로젝트에 Firebase 추가에 나온 요구사항을 확인하세요.
Firebase는 '가능한 한' Xcode 베타 출시 버전을 지원합니다. 개발자는 GitHub의 Firebase iOS SDK 저장소에서 문제를 추적하고 제출할 수 있습니다.
가격
어떤 제품이 유료이고 어떤 제품이 무료인가요?
Firebase의 유료 인프라 제품은 실시간 데이터베이스, 저장소, 함수, 호스팅, Test Lab, 전화 인증이며 이러한 모든 기능에 무료 등급도 제공됩니다.
Firebase에는 애널리틱스, 클라우드 메시징, 알림 작성기, 원격 구성, 앱 색인 생성, 동적 링크, 초대, 오류 보고 등 무료 제품도 많이 있습니다. 무료 Spark 요금제를 비롯한 모든 요금제에서 이러한 제품을 무제한으로 사용할 수 있습니다. 또한 전화 인증을 제외한 모든 인증 기능은 무료입니다.
어떤 요금제가 적합한지 어떻게 알 수 있나요?
Spark 요금제는 취미로 하는 프로젝트이거나 스타트업을 새로 시작할 때 무료로 앱을 개발하는 데 매우 유용합니다. 애널리틱스, 알림 작성기, 오류 보고 등의 무료 Firebase 기능이 모두 제공되며 유료 인프라 기능도 넉넉하게 제공됩니다. 그러나 한 달 중에 Spark 요금제 리소스를 소진하면 월말까지 앱이 정지됩니다. 또한 Spark 등급에서는 Google Cloud Platform 기능을 사용할 수 없습니다.
Flame 요금제는 무료 등급 요금제보다 많은 실시간 데이터베이스, 저장소, 호스팅 리소스 용량을 예측 가능한 낮은 요금으로 이용하고자 하는 초기 단계의 스타트업 및 소규모 프로덕션 앱용으로 설계되었습니다. Spark 요금제와 마찬가지로 Flame 요금제에서는 Google Cloud Platform을 사용할 수 없습니다. 한 달 중에 요금제 리소스를 소진하면 월말까지 앱이 정지됩니다.
Blaze 요금제는 대규모 프로덕션 앱 및 요금제 한도가 초과하여도 다운타임이 발생해서는 안 되는 앱용으로 설계되었습니다. 또한 Blaze 요금제에서는 유료 Google Cloud Platform 기능으로 앱을 확장할 수 있습니다. 사용한 리소스에 대해서만 요금을 지불하므로 수요에 맞게 확장할 수 있습니다. Google은 업계의 주요 클라우드 제공업체보다 유리한 가격으로 Blaze 요금제를 제공하고자 노력하고 있습니다.
Firebase Console에서 실시간 데이터베이스 및 호스팅 리소스 사용량을 추적할 수 있습니다. 자세한 내용은 실시간 데이터베이스 사용량과 호스팅 사용량을 참조하세요.
Blaze 요금제의 무료 사용량은 Spark 요금제의 무료 사용량과 어떻게 다른가요?
Blaze 요금제의 무료 사용량은 매일 계산됩니다. 또한 Cloud Functions, 전화 인증, Test Lab의 경우 Spark 요금제와 사용량 한도가 다릅니다.
Cloud Functions의 경우 Blaze 요금제의 무료 사용량이 프로젝트 수준이 아닌 결제 계정 수준에서 계산되며 다음과 같은 한도가 있습니다.
- 호출 200만 회/월
- 40만 GB-초/월
- 20만 CPU-초/월
- 네트워킹 이그레스 5GB/월
전화 인증의 경우 Blaze 요금제의 무료 사용량이 월 단위로 계산됩니다.
Test Lab의 경우 Blaze 요금제의 무료 사용량에 다음과 같은 한도가 있습니다.
- 실제 기기 시간 30분/일
- 가상 기기 시간 60분/일
Spark에서 Blase 요금제로 변경하면 무료 사용량 할당량이 재설정되나요?
Spark 요금제의 무료 사용량은 Blaze 요금제에 포함되어 있습니다. Blaze 요금제로 이동해도 무료 사용량이 재설정되지 않습니다.
'동시 데이터베이스 연결'은 무엇인가요?
동시 연결은 데이터베이스에 연결된 휴대기기, 브라우저 탭 또는 서버 앱 하나를 말합니다. Firebase는 앱의 데이터베이스에 대한 동시 연결 수를 일정하게 제한합니다. 이 제한은 Firebase 및 사용자를 악용 사례로부터 보호하려는 조치입니다.
Spark 요금제에서는 한도가 100개이며 상향 조정은 불가능합니다. Flame 및 Blaze 요금제의 데이터베이스당 동시 연결 한도는 200,000개입니다.
모든 사용자가 동시에 연결하지는 않으므로 이 한도는 앱의 총 사용자 수와 다릅니다. 200,000개보다 많은 동시 연결이 필요한 경우 여러 데이터베이스로 확장을 참조하세요.
실시간 데이터베이스에 대한 Spark 또는 Flame 요금제의 저장용량이나 다운로드 한도를 초과하면 어떻게 되나요?
요금을 예측할 수 있도록 Spark 및 Flame 요금제에서 제공되는 리소스에는 한도가 설정되어 있습니다. 따라서 한 달 중에 요금제 한도를 초과하면 리소스를 더 이상 사용할 수 없도록 앱이 사용 중지되므로 추가 요금이 부과되지 않습니다.
실시간 데이터베이스에 대한 Spark 요금제의 동시 연결 한도를 초과하면 어떻게 되나요?
앱이 Spark 요금제의 동시 연결 한도에 도달하면 기존 연결 중 일부가 종료될 때까지 이후의 모든 연결이 거부됩니다. 이미 연결된 사용자는 앱을 계속 사용할 수 있습니다.
Cloud Storage에 대한 Spark 또는 Flame 요금제의 업로드, 다운로드, 저장용량 한도를 초과하면 어떻게 되나요?
Spark 또는 Flame 요금제에서 프로젝트의 Cloud Storage 한도를 초과하면 어떠한 한도를 초과했는지에 따라 다른 결과가 발생합니다.
- 저장된 크기(GB) 한도를 초과하면 해당 프로젝트에서 데이터를 더 이상 저장할 수 없으며, 저장된 데이터를 일부 삭제하거나 저장용량을 더 많이 또는 무제한으로 제공하는 요금제로 업그레이드해야 합니다.
- 다운로드한 크기(GB) 한도를 초과하면 다음 날이 시작될 때까지(미국 태평양 표준시 자정 기준) 앱에서 데이터를 더 이상 다운로드할 수 없으며, 바로 다운로드하려면 한도에 여유가 있거나 제한이 없는 요금제로 업그레이드해야 합니다.
- 업로드 또는 다운로드 작업 한도를 초과하면 다음 날이 시작될 때까지(미국 태평양 표준시 자정 기준) 앱에서 데이터를 더 이상 업로드 또는 다운로드할 수 없으며, 바로 업로드 또는 다운로드하려면 한도에 여유가 있거나 제한이 없는 요금제로 업그레이드해야 합니다.
Firebase의 Google Cloud Platform과 통합은 어떻게 작동하나요?
Firebase는 Google Cloud Platform과 긴밀하게 통합되어 있습니다. Firebase와 Google Cloud Platform 간에 프로젝트가 공유되므로 프로젝트에서 Firebase 서비스와 Google Cloud Platform 서비스를 함께 사용할 수 있습니다. Firebase Console 또는 Google Cloud Console에서 동일한 프로젝트에 액세스할 수 있습니다. 구체적으로는 다음과 같습니다.
- Firebase Storage와 같은 특정 Firebase 기능은 Google Cloud Platform에 직접적으로 의존합니다. Google Cloud Platform에 의존하는 기능은 앞으로 계속 늘어날 예정입니다.
- 공동작업자, 결제 정보 등의 여러 가지 설정이 Firebase와 Google Cloud Platform에서 공유됩니다. Firebase 및 Google Cloud Platform 사용량은 동일한 청구서에 표기됩니다.
뿐만 아니라 Blaze 요금제로 업그레이드하면 Firebase 프로젝트 내에서 Google Cloud Platform의 세계적인 Infrastructure-as-a-Service 및 API를 모두 표준 Google Cloud Platform 가격으로 사용할 수 있습니다. 또한 Firebase용 Google 애널리틱스에서 BigQuery로 직접 데이터를 내보내서 분석할 수 있습니다. 자세한 내용은 Firebase와 BigQuery 연결을 참조하세요.
Firebase를 Google Cloud Platform과 함께 사용하면 다른 곳에 배치된 여타 클라우드 서비스를 함께 사용할 때보다 보안 강화, 지연 시간 단축, 개발 시간 절약 등 수많은 장점이 있습니다. 자세한 내용은 Google Cloud Platform 사이트를 참조하세요.
Google Cloud Console에서 Firebase 프로젝트의 결제 계정을 추가하거나 삭제하면 해당 계정이 어떻게 되나요?
Google Cloud Console에서 프로젝트에 결제 계정을 추가하면 해당 프로젝트가 현재 Spark 또는 Flame 요금제인 경우 자동으로 Firebase Blaze 요금제로 업그레이드됩니다.
반면, Google Cloud Console에서 프로젝트의 기존 활성 결제 계정을 삭제하면 해당 프로젝트가 Firebase Spark 요금제로 다운그레이드됩니다.
언제라도 업그레이드 또는 다운그레이드하거나 취소할 수 있나요?
예, 언제라도 업그레이드 또는 다운그레이드하거나 취소할 수 있습니다. 단, 다운그레이드 또는 취소에 대해 일할 계산하여 환불은 받을 수 없습니다. 따라서 결제 기간이 끝나기 전에 다운그레이드 또는 취소하더라도 해당 월의 나머지 기간에 대한 비용을 지불해야 합니다.
어떤 지원을 받나요?
무료 요금제를 포함하여 모든 Firebase 앱에는 미국 태평양 표준시 영업시간 동안 Firebase 직원의 이메일 지원이 제공됩니다. 모든 계정에서 기술적 문제해결 관련 문의는 연간 10건으로 제한되지만 결제 관련 문제, 계정 관련 문제 및 이슈 신고에 대해서는 무제한 지원이 제공됩니다.
Blaze 요금제에서 사용량을 제한할 수 있나요?
아니요, 현재는 Blaze 요금제 사용량에 한도를 설정할 수 없지만 Google은 한도 설정 기능을 지원하는 방안을 검토하고 있습니다.
Blaze 사용자는 프로젝트 또는 계정에 대한 예산을 정의할 수 있고 비용이 한도에 접근함에 따라 알림을 받을 수 있습니다. 자세한 내용은 예산 알림 설정을 참조하세요.
자동 백업이란 무엇인가요? 시간별 백업도 제공하나요?
자동 백업은 Blaze 요금제 고객을 위한 고급 기능으로 Firebase 실시간 데이터베이스 데이터를 하루에 한 번 백업하여 Google Cloud Storage에 업로드합니다.
시간별 백업은 제공되지 않습니다.
월 중간에 가입하거나 다운그레이드하면 Flame 요금제가 일할 계산되나요?
업그레이드할 때만 가능하며 다운그레이드에는 해당하지 않습니다. 언제든지 업그레이드 또는 다운그레이드할 수 있지만, 업그레이드 시에만 일할 계산되며 다운그레이드 시에는 그렇지 않습니다. 월 중간에 Flame 요금제에 가입하면 해당 월의 나머지 기간에 대해서만 요금이 청구됩니다. 하지만 월 중간에 다운그레이드하는 경우 해당 월의 나머지 기간에 대해서도 요금이 청구되는데, 이는 남용을 방지하기 위한 조치입니다.
오픈소스, 비영리단체, 교육용 제품 할인이 있나요?
Spark 및 Flame 요금제는 비영리단체, 학교, 오픈소스 프로젝트를 포함하여 모든 개인과 단체가 사용할 수 있습니다. 이러한 요금제는 이미 넉넉한 할당량을 제공하므로 오픈소스, 비영리단체 또는 교육 목적 프로젝트에 대한 특별 할인을 제공하지 않습니다.
기업용 계약, 가격 책정, 지원 또는 전용 인프라 호스팅을 제공하나요?
Blaze 요금제는 규모에 관계없이 모든 기업에 적합하며 SLA는 클라우드 인프라의 업계 표준 이상을 충족합니다. 그러나 실시간 데이터베이스와 같은 서비스에 대한 기업용 계약, 가격 책정, 지원이나 전용 인프라 호스팅(기업 내 설치)은 제공하지 않습니다. Google은 이러한 기능 일부를 추가하기 위해 노력하고 있습니다.
특별 임시 요금을 제공하나요? 1~2개 기능을 종량제로 사용하고 싶습니다.
Blaze 요금제에서는 사용하는 기능에 대해서만 요금을 지불하는 특별 임시 요금을 제공합니다.
유료 Firebase 요금제에서 Ads를 어떻게 사용하나요? 유료 요금제에서 사용할 수 있는 무료 광고 크레딧이 있나요?
Firebase 요금제는 Ads와 별개이므로 무료 광고 크레딧은 제공되지 않습니다. Firebase 개발자는 Ads 계정을 Firebase에 '연결'하여 전환추적을 지원할 수 있습니다.
모든 광고 캠페인은 Ads에서 직접 관리되고 Ads 결제는 Ads 콘솔에서 관리됩니다.
개인정보 보호
Firebase의 개인정보 보호 및 보안에 관한 정보는 어디에서 찾을 수 있나요?
Firebase의 개인정보 보호 및 보안 페이지를 확인하세요.
Firebase SDK는 사용 및 진단 정보를 애널리틱스 외부에 로깅하나요?
예. 현재 iOS만 해당되지만 향후 변경될 수 있습니다. Firebase iOS SDK에는 기본적으로 FirebaseCoreDiagnostics
프레임워크가 포함되어 있습니다. Firebase에서 SDK 사용 및 진단 정보를 수집하여 향후 제품 개선사항 우선순위를 결정하는 데 이 프레임워크를 사용합니다.
FirebaseCoreDiagnostics
는 선택사항이므로 Firebase 진단 로그 전송을 선택 해제하려면 애플리케이션에서 라이브러리를 연결 해제하면 됩니다. 로깅된 값 등 전체 소스를 [GitHub](https://github.com/firebase/firebase-ios-sdk/tree/master/Firebase/CoreDiagnostics)에서 찾아볼 수 있습니다.
애널리틱스
Firebase 제품을 사용할 때 Google 애널리틱스가 권장되는 이유가 무엇인가요?
Google 애널리틱스는 Firebase 기능과 연동하여 유용한 통계 자료를 제공하는 제한 없는 무료 분석 솔루션입니다. 이 솔루션으로 Crashlytics의 이벤트 로그, FCM의 알림 효과, 동적 링크의 딥 링크 실적, Google Play의 인앱 구매 데이터 등을 조회할 수 있습니다. 또한 원격 구성, 예측 등의 고급 잠재고객 타겟팅을 뒷받침합니다.
Google 애널리틱스는 Firebase Console에서 인텔리전스 계층의 역할을 하면서 고품질의 앱을 개발하고 사용자층을 확대하여 더 많은 수익을 창출할 수 있는 실용적인 통계 자료를 제공합니다.
시작하려면 문서를 읽어보세요.
특정 기준에 맞지 않는 사용자를 어떻게 분리하나요?
이러한 사용자를 '제외하는 타겟팅'으로 문제를 재구성할 수 있습니다. 예를 들어 ‘어떤 항목을 구입한 사용자에게 광고를 게재하지 않음’으로 문제를 재구성하고 이러한 사용자 잠재고객을 대상으로 지정합니다.
애널리틱스 데이터가 나머지 Firebase와 공유되는 방식을 어떻게 관리하나요?
기본적으로 Google 애널리틱스 데이터는 다른 Firebase 및 Google 기능을 향상시키기 위해 사용됩니다. 언제든지 프로젝트 설정에서 Google 애널리틱스 데이터가 공유되는 방식을 관리할 수 있습니다. 데이터 공유 설정을 자세히 알아보세요.
완전히 업그레이드된 새로운 Google 애널리틱스 계정은 무엇인가요?
블로그 게시물에서 새로운 Google 애널리틱스 업그레이드에 대한 자세한 내용을 읽어볼 수 있습니다.
Firebase용 Google 애널리틱스를 사용 중인지 아니면 완전히 업그레이드된 Google 애널리틱스 계정을 사용 중인지 어떻게 알 수 있나요?
Firebase Console의 애널리틱스 대시보드에서 'Google 애널리틱스에서 데이터 보기' 링크가 표시된다면 프로젝트가 완전히 업그레이드된 Google 애널리틱스 계정을 사용 중인 것입니다.
또한 Firebase Console에서 Google 애널리틱스 카드를 통해 확인할 수도 있습니다. settings > 프로젝트 설정 > 통합에서 관리를 클릭하면 이 카드에 액세스할 수 있습니다. 내 Google Analytics 속성 섹션에 연결된 Google 애널리틱스 계정이 표시되면 프로젝트가 Firebase에서 전체 기능을 갖춘 Google 애널리틱스 환경을 사용하고 있는 것입니다. 연결된 Google 애널리틱스 계정이 표시되지 않으면 프로젝트가 Firebase용 Google 애널리틱스를 사용하고 있는 것입니다.
새로운 Firebase용 Google 애널리틱스로 업그레이드하면 내 데이터는 어떻게 되나요?
Firebase Console의 기존 Firebase 프로젝트 분석 데이터는 업그레이드의 영향을 받지 않습니다.
현재 사용 중인 것과 동일한 대시보드 및 워크플로를 계속 사용할 수 있으며 Google 애널리틱스의 일부 고급 기능에도 액세스할 수 있습니다.
업그레이드 후 교차 기기 보고를 사용하기로 결정하면 사용자 ID를 사용하여 데이터가 중복 제거됩니다. 따라서 Firebase Console에서 일부 사용자 수가 줄어들 수 있습니다.
Firebase 사용자 세분화 스토리지란 무엇인가요?
Firebase 사용자 세분화 스토리지에는 잠재고객 목록을 사용하는 다른 Firebase 서비스(예: Crashlytics, FCM, 예측 등)에 타겟팅 정보를 제공하기 위해 만든 잠재고객 목록이 저장됩니다.
Google 애널리틱스에서 앱을 연결 해제한 후 데이터가 표시되지 않는 이유는 무엇인가요?
애널리틱스 데이터는 Firebase 프로젝트가 아닌 Google 애널리틱스 속성 내에 존재합니다. 속성을 삭제하거나 연결을 해제하면 프로젝트에서도 데이터가 연결 해제됩니다. 하지만 데이터는 여전히 해당 속성에 존재하므로 언제든지 프로젝트에 다시 연결할 수 있습니다.
새 Google 애널리틱스 계정과 새 속성을 만들면 Firebase Console에 빈 애널리틱스 대시보드가 생깁니다.
내 프로젝트를 새로운 Google 애널리틱스 환경으로 업그레이드하려고 할 때 오류가 발생하는 이유는 무엇인가요?
업그레이드 시 다음과 같은 오류가 발생하는 경우가 있습니다.
The operation has failed (Reason: Requested entity already exists)
또는
The operation has failed (Reason: Precondition check failed)
이것은 프로젝트와 기존 Google 애널리틱스 속성이 연결되어 있음을 의미합니다. Google 애널리틱스 인터페이스를 통해 속성을 연결 해제하거나 삭제하거나 업그레이드할 수 있습니다.
문제가 계속 발생하면 REST API에서 removeAnalytics 메서드를 사용하여 연결 해제하고 addGoogleAnalytics 메서드를 사용하여 새 속성을 연결할 수 있습니다.
그런 다음 여기에 설명된 단계에 따라 한 속성의 데이터를 다른 속성으로 이동할 수 있습니다.
Google 애널리틱스에 정의된 잠재고객 또는 이벤트를 Firebase 대시보드에서 볼 수 있나요?
잠재고객과 사용자 속성은 동기화됩니다. 일부 기능에서는 세분화 및 닫힌 유입경로와 같은 Google 애널리틱스 인터페이스를 사용해야 하며 Firebase Console의 딥 링크를 통해 Google 애널리틱스 인터페이스에 직접 액세스할 수 있습니다. Firebase Console에서 변경한 내용을 Google 애널리틱스에서도 적용할 수 있으며 이러한 변경사항은 Firebase에 반영됩니다.
개발
Firebase 인증: 어떠한 국가에서 전화 인증이 지원되나요?
Firebase 인증은 전 세계에서 전화번호 인증을 지원하지만, 네트워크에 따라서는 인증 메시지가 안정적으로 전달되지 않을 수 있습니다. 전화번호 로그인을 안정적으로 사용할 수 있을 정도의 양호한 전달률을 보이는 국가는 다음과 같습니다.
국가 | 코드 |
---|---|
AD | 안도라 |
AE | 아랍에미리트 |
AF | 아프가니스탄 |
AG | 앤티가 바부다 |
AL | 알바니아 |
AM | 아르메니아 |
AO | 앙골라 |
AR | 아르헨티나 |
AS | 미국령 사모아 |
AT | 오스트리아 |
AU | 오스트레일리아 |
AW | 아루바 |
AZ | 아제르바이잔 |
BA | 보스니아 헤르체고비나 |
BB | 바베이도스 |
BD | 방글라데시 |
BE | 벨기에 |
BF | 부르키나 파소 |
BG | 불가리아 |
BJ | 베냉 |
BM | 버뮤다 |
BN | 브루나이 |
BO | 볼리비아 |
BR | 브라질 |
BS | 바하마 |
BT | 부탄 |
BW | 보츠와나 |
BY | 벨라루스 |
BZ | 벨리즈 |
CA | 캐나다 |
CD | 콩고(킨샤사) |
CF | 중앙아프리카 공화국 |
CG | 콩고(브라자빌) |
CH | 스위스 |
CI | 코트디부아르 |
CK | 쿡 제도 |
CL | 칠레 |
CM | 카메룬 |
CO | 콜롬비아 |
CR | 코스타리카 |
CV | 카보 베르데 |
CW | 퀴라소 |
CY | 사이프러스 |
CZ | 체코 |
DE | 독일 |
DJ | 지부티 |
DK | 덴마크 |
DM | 도미니카 |
DO | 도미니카 공화국 |
DZ | 알제리 |
EC | 에콰도르 |
EG | 이집트 |
ES | 스페인 |
ET | 에티오피아 |
FI | 핀란드 |
FJ | 피지 |
FK | 포클랜드 제도(말비나스) |
FM | 미크로네시아 연방 |
FO | 페로 제도 |
FR | 프랑스 |
GA | 가봉 |
GB | 영국 |
GD | 그레나다 |
GE | 조지아 |
GF | 프랑스령 기아나 |
GG | 건지 |
GH | 가나 |
GI | 지브롤터 |
GL | 그린란드 |
GM | 감비아 |
GP | 과들루프 |
GQ | 적도 기니 |
GR | 그리스 |
GT | 과테말라 |
GY | 가이아나 |
HK | 홍콩, 중국 특별행정구 |
HN | 온두라스 |
HR | 크로아티아 |
HT | 아이티 |
HU | 헝가리 |
ID | 인도네시아 |
IE | 아일랜드 |
IL | 이스라엘 |
IM | 맨 섬 |
IN | 인도 |
IQ | 이라크 |
IT | 이탈리아 |
JE | 저지 |
JM | 자메이카 |
JO | 요르단 |
JP | 일본 |
KE | 케냐 |
KG | 키르기스스탄 |
KH | 캄보디아 |
KM | 코모로스 |
KN | 세인트 키츠 네비스 |
KR | 대한민국 |
KW | 쿠웨이트 |
KY | 케이맨 제도 |
KZ | 카자흐스탄 |
LA | 라오스 |
LB | 레바논 |
LC | 세인트루시아 |
LI | 리히텐슈타인 |
LK | 스리랑카 |
LS | 레소토 |
LT | 리투아니아 |
LU | 룩셈부르크 |
LV | 라트비아 |
LY | 리비아 |
MA | 모로코 |
MD | 몰도바 |
ME | 몬테네그로 |
MF | 생마르탱(프랑스령) |
MG | 마다가스카르 |
MK | 마케도니아 공화국 |
MM | 미얀마 |
MN | 몽골 |
MO | 마카오, 중국 특별행정구 |
MS | 몬트세랫 |
MT | 몰타 |
MU | 모리셔스 |
MW | 말라위 |
MX | 멕시코 |
MY | 말레이시아 |
MZ | 모잠비크 |
NA | 나미비아 |
NC | 뉴칼레도니아 |
NE | 니제르 |
NF | 노퍽 섬 |
NG | 나이지리아 |
NI | 니카라과 |
NL | 네덜란드 |
NO | 노르웨이 |
NP | 네팔 |
NZ | 뉴질랜드 |
OM | 오만 |
PA | 파나마 |
PE | 페루 |
PG | 파푸아뉴기니 |
PH | 필리핀 |
PK | 파키스탄 |
PL | 폴란드 |
PM | 생피에르 미클롱 |
PR | 푸에르토리코 |
PS | 팔레스타인 자치정부 |
PT | 포르투갈 |
PY | 파라과이 |
QA | 카타르 |
RE | 레위니옹 |
RO | 루마니아 |
RS | 세르비아 |
RU | 러시아 연방 |
RW | 르완다 |
SA | 사우디아라비아 |
SC | 세이셸 |
SE | 스웨덴 |
SG | 싱가포르 |
SH | 세인트헬레나 |
SI | 슬로베니아 |
SK | 슬로바키아 |
SL | 시에라리온 |
SN | 세네갈 |
SR | 수리남 |
ST | 상투메 프린시페 |
SV | 엘살바도르 |
SZ | 스와질란드 |
TC | 터크스 케이커스 제도 |
TG | 토고 |
TH | 태국 |
TL | 동티모르 |
TM | 투르크메니스탄 |
TO | 통가 |
TR | 터키 |
TT | 트리니다드 토바고 |
TW | 타이완, 중화민국 |
TZ | 탄자니아 연합 공화국 |
UA | 우크라이나 |
UG | 우간다 |
US | 미국 |
UY | 우루과이 |
UZ | 우즈베키스탄 |
VC | 세인트 빈센트 그레나딘 |
VE | 베네수엘라(볼리바르 공화국) |
VG | 영국령 버진아일랜드 |
VI | 미국령 버진아일랜드 |
VN | 베트남 |
WS | 사모아 |
YE | 예멘 |
YT | 마요트 |
ZA | 남아프리카 공화국 |
ZM | 잠비아 |
ZW | 짐바브웨 |
오류 보고: 오류 보고보다 애널리틱스의 오류 보고서 수가 더 적은 이유는 무엇인가요?
오류 보고는 오류 정보를 업로드하기 위해 별도의 백그라운드 프로세스를 만듭니다. 앱이 Android Application 클래스를 확장하는 경우 다중 프로세스에서도 안전하도록 설정해야 합니다. 그렇지 않은 경우 동시 실행 문제가 생길 수 있습니다. 앱이 Application 객체를 확장하는 경우 다중 프로세스 앱의 각 프로세스에 대해 이 객체가 인스턴스화됩니다. 앱에 오류 보고를 추가할 때 다음을 고려하세요.
- 이 객체의 구현에서 데이터베이스, 파일 시스템, 공유 환경설정 등의 프로세스 외부 상태에 액세스하거나 멀티 프로세스 환경에 안전하지 않은 기타 작업을 수행하면 동시 실행 문제가 발생할 수 있습니다. Application 개체의 여러 인스턴스가 동시에 실행될 수 있기 때문입니다.
- 로컬 데이터베이스 등에 프로세스 외부 상태를 유지하는 많은 타사 라이브러리를 Application 객체에서 초기화하는 경우에도 동시 실행 문제에 주의해야 합니다. 이 설명에 해당하는 앱에서 오류 보고를 사용하려는 경우 애플리케이션 로직을 콘텐츠 제공업체 또는 Android 활동으로 이동하는 것이 좋습니다. 멀티 프로세스 환경에 안전하지 않은 애플리케이션 로직은 앱에 의도하지 않은 영향을 줄 수 있습니다.
오류 보고는 캡처된 오류를 자동으로 Google 애널리틱스에 app_exception 이벤트로 내보냅니다. 현재 Android에서는 오류 보고의 오류 개수와 애널리틱스 app_exception 이벤트의 개수 사이에 상당한 차이가 나타날 수 있습니다.
클라우드 메시징: 알림 작성기와 클라우드 메시징의 차이는 무엇인가요?
Firebase 클라우드 메시징은 클라이언트 SDK 및 HTTP와 XMPP 서버 프로토콜을 통해 완전한 메시징 기능 모음을 제공합니다. 메시징 요구사항이 보다 복잡한 배포의 경우 FCM이 가장 적합한 선택입니다.
알림 작성기는 Firebase 클라우드 메시징을 기반으로 개발된 경량형 서버리스 메시징 솔루션입니다. 사용자에게 친숙한 그래픽 콘솔을 갖춘 알림 작성기로 코딩 요구사항을 줄이면서 사용자에게 손쉽게 메시지를 발송하여 재사용을 유도하고 사용자층을 유지하며 앱 성장을 촉진하고 마케팅 캠페인을 지원할 수 있습니다.
기능 | 알림 작성기 | 클라우드 메시징 | |
---|---|---|---|
대상 | 단일 기기 | ||
주제를 구독하는 클라이언트 (예: 날씨) | |||
사전 정의된 사용자 세그먼트의 클라이언트(앱, 버전, 언어) | |||
지정된 애널리틱스 잠재고객의 클라이언트 | |||
기기 그룹의 클라이언트 | |||
클라이언트에서 서버로 업스트림 | |||
메시지 유형 | 알림(최대 2kb) | ||
데이터 메시지(최대 4kb) | |||
전송 | 즉시 필요 | ||
이후의 클라이언트 기기 현지 시간 | |||
애널리틱스 | 기본 제공 알림 애널리틱스 수집 및 유입경로 분석 |
클라우드 메시징: FCM을 사용하려면 다른 Firebase 서비스를 사용해야 하나요?
GCM을 사용한 방식과 마찬가지로 다른 Firebase 서비스를 사용하지 않고 Firebase 클라우드 메시징을 독립형 구성요소로 사용할 수 있습니다.
클라우드 메시징: 기존 Google 클라우드 메시징(GCM) 개발자의 경우 Firebase 클라우드 메시징으로 이동해야 하나요?
Firebase 브랜드에서 GCM의 새 버전인 FCM은 GCM의 핵심 인프라를 상속하며 새 SDK로 클라우드 메시징 개발이 더 쉬워졌습니다.
FCM SDK로 업그레이드할 때의 장점:
- 더욱 간단한 클라이언트 개발. 자체 가입 또는 구독 다시 시도 로직을 작성할 필요가 없습니다.
- 바로 사용할 수 있는 알림 솔루션. 웹 콘솔을 갖춘 서버리스 알림 솔루션인 알림 작성기를 사용하면 누구나 Firebase용 Google 애널리틱스의 통계를 기반으로 특정 잠재고객을 타겟팅하는 알림을 보낼 수 있습니다.
GCM SDK에서 FCM SDK로 업그레이드하려면 Android 및 iOS 앱의 마이그레이션 가이드를 참조하세요.
클라우드 메시징: 타겟팅한 기기에서 메시지 수신에 실패하는 이유가 무엇인가요?
기기에서 성공적으로 메시지를 수신하지 못하는 경우 우선 다음 두 가지 원인을 확인해 보세요.
알림 메시지에 대한 포그라운드 메시지 처리. 기기에서 앱이 포그라운드 상태일 때 알림 메시지를 처리하는 메시지 처리 로직을 클라이언트 앱에 추가해야 합니다. 자세한 내용은 iOS 및 Android 문서를 참조하세요.
네트워크 방화벽 제한. 조직에 인터넷 트래픽 송수신을 제한하는 방화벽이 있는 경우 FCM 연결을 허용하도록 구성해야 Firebase 클라우드 메시징 클라이언트 앱에서 메시지를 수신할 수 있습니다. 다음 포트를 개방해야 합니다.
- 5228
- 5229
- 5230
FCM은 일반적으로 5228을 사용하지만 경우에 따라 5229 및 5230도 사용합니다. FCM은 특정 IP를 제공하지 않으므로 Google ASN 15169에 나와 있는 IP 블록에 포함된 모든 IP 주소로 나가는 연결을 방화벽에서 허용해야 합니다.
클라우드 메시징: Android 앱에서 구현한 onMessageReceived
가 호출되지 않습니다.
앱이 백그라운드 상태이면 알림 메시지가 작업 표시줄에 표시되며 onMessageReceived
는 호출되지 않습니다.
알림 메시지에 데이터 페이로드가 있는 경우 알림 메시지는 작업 표시줄에 표시되며 알림 메시지에 포함된 데이터는 사용자가 알림을 탭할 때 실행되는 인텐트에서 검색할 수 있습니다.
자세한 내용은 메시지 수신 및 처리를 참조하세요.
실시간 데이터베이스: 2016년 9월에서 2017년 3월 사이에 실시간 데이터베이스에서 보고하는 대역폭이 평균보다 낮은 이유는 무엇인가요?
대역폭을 계산할 때는 일반적으로 OSI 모델 레이어 5에 기반한 SSL 암호화 오버헤드가 포함됩니다. 그러나 2016년 9월에 발생한 버그로 인해 대역폭 보고 시 암호화 오버헤드가 누락되었습니다. 이에 따라 몇 개월 동안 계정에서 보고된 대역폭과 청구액이 인위적으로 낮아졌을 수 있습니다.
2017년 3월 후반에 이 버그가 수정되어 대역폭 및 청구액이 평상시 수준으로 돌아갔습니다.
실시간 데이터베이스: 실시간 데이터베이스 확장에는 어떤 제한이 있나요?
각 실시간 데이터베이스 인스턴스는 초당 쓰기 작업 횟수에 제한이 있습니다. 소규모 쓰기의 경우 초당 약 1,000개의 쓰기 작업으로 제한됩니다. 이 한도에 가까워질 경우 다중 경로 업데이트를 사용하여 작업을 일괄 처리하면 처리량을 높일 수 있습니다.
또한 각 데이터베이스 인스턴스에는 동시 데이터베이스 연결 수에 대한 한도가 있습니다. 기본 제한은 대부분의 애플리케이션에 충분합니다. 추가 확장이 필요한 앱을 빌드 중이라면 추가된 크기에 대해 여러 데이터베이스 인스턴스에서 애플리케이션을 샤딩해야 할 수도 있습니다. 또한 대체 데이터베이스로 Cloud Firestore를 사용할 수도 있습니다.
실시간 데이터베이스: 실시간 데이터베이스 사용량 한도를 초과한 경우 어떻게 해야 하나요?
이메일이나 Firebase Console을 통해 실시간 데이터베이스 사용량 한도를 초과했다는 알림을 받은 경우 초과한 사용량 한도를 토대로 조치를 취할 수 있습니다. 실시간 데이터베이스 사용량을 확인하려면 Firebase Console의 실시간 데이터베이스 사용량 섹션으로 이동합니다.
다운로드 한도를 초과한 경우 Firebase 요금제를 업그레이드하거나 다음 결제 주기 시작 시 다운로드 한도가 재설정될 때까지 기다려야 할 수 있습니다. 다운로드 사용량을 줄이는 방법은 다음과 같습니다.
- 수신 대기 작업으로 반환되는 데이터를 제한하는 쿼리를 추가합니다.
- 색인화되지 않은 쿼리가 있는지 확인합니다.
- 데이터 업데이트만 다운로드하는 리스너(예:
once()
대신on()
)를 사용합니다. - 보안 규칙을 사용하여 무단 다운로드를 차단합니다.
저장용량 한도를 초과한 경우 서비스가 중단되지 않도록 요금제를 업그레이드합니다. 데이터베이스의 데이터 양을 줄이는 방법은 다음과 같습니다.
- 주기적으로 정리 작업을 실행합니다.
- 데이터베이스의 중복 데이터를 줄입니다.
데이터 삭제가 저장용량 할당에 반영되기까지 다소 시간이 걸릴 수 있습니다.
동시 데이터베이스 연결 한도를 초과한 경우 서비스가 중단되지 않도록 요금제를 업그레이드합니다. 동시 데이터베이스 연결을 관리하려면 실시간 연결이 필요하지 않은 사용자는 REST API를 통해 연결하세요.
저장소: Cloud Storage를 사용할 수 없는데 왜 그런가요?
Firebase 저장소는 Google App Engine 무료 등급에 기본 버킷을 만듭니다. 따라서 신용카드를 등록하거나 결제 계정을 사용 설정할 필요없이 Firebase 및 Firebase 저장소를 빠르게 설정하고 실행할 수 있습니다. 또한 Firebase와 Google Cloud Platform 프로젝트 간에 손쉽게 데이터를 공유할 수 있습니다.
그러나 이 버킷을 만들 수 없기 때문에 Firebase Storage를 사용할 수 없는 2가지 경우가 알려져 있습니다.
- Google Cloud Platform에서 가져온 프로젝트에 Google App Engine 마스터/슬레이브 Datastore 애플리케이션이 포함된 경우
-
Google Cloud Platform에서 가져온 프로젝트에 도메인 프리픽스 프로젝트가 포함된 경우. 예:
domain.com:project-1234
.
현재는 이 문제를 해결할 방법이 없으며 Firebase Console에서 새 프로젝트를 만들고 해당 프로젝트에서 Firebase Storage를 사용 설정하는 것이 좋습니다.
성장 및 수익 창출
원격 구성: 값을 가져와도 앱의 동작과 모양이 바뀌지 않는데 왜 그런가요?
fetchAndActivate()를 사용하여 값을 가져오지 않으면 값이 로컬에 저장되지만 활성화되지 않습니다. 가져온 값을 활성화하고 적용하려면 activate
를 호출합니다. 이 설계 방식에서는 activate
호출 시기를 선택할 수 있으므로 앱의 동작과 모양이 변경되는 시기를 제어할 수 있습니다. activate
를 호출하면 앱 소스 코드는 업데이트된 매개변수 값을 사용할 시기를 결정합니다.
예를 들어 값을 가져온 후 사용자가 다음번에 앱을 시작할 때 활성화하면 앱이 서비스에서 값을 가져오느라 기다릴 필요가 없으므로 앱 시작이 지연되지 않습니다. 그런 다음 앱에서 업데이트된 매개변수 값을 사용하면 앱의 동작과 모양에 변화가 나타납니다.
Remote Config API 및 사용 모델에 대한 자세한 내용은 Remote Config API 개요를 참조하세요.
원격 구성: 앱을 개발하는 중에 가져오기 요청을 빈번하게 보내고 있습니다. 앱에서 가져오기 요청을 보낼 때 서비스의 최신 값이 검색되지 않는 경우가 있는데 왜 그런가요?
앱 개발 단계에서는 앱을 개발하고 테스트할 때 빠르게 반복할 수 있도록 구성 가져오기와 활성화를 자주(한 시간에 몇 번씩)하는 것이 좋습니다. 개발자가 10명 이하인 프로젝트에서는 빠르게 반복할 수 있도록 앱에서 가져오기 간격 최솟값(setMinimumFetchIntervalInSeconds
)의 FirebaseRemoteConfigSettings
객체를 임시로 설정할 수 있습니다.
원격 구성: 앱에서 가져오기 요청을 보내면 원격 구성 서비스에서 해당 값을 얼마나 빠르게 반환하나요?
가져올 값이 기기에 수신되는 데 걸리는 시간은 보통 1초 미만이며 몇 밀리초에 불과한 경우도 많습니다. 원격 구성 서비스는 몇 밀리초 이내에 가져오기 요청을 처리하지만 가져오기 요청을 완료하는 데 필요한 시간은 기기의 네트워크 속도 및 기기에서 사용하는 네트워크 연결의 지연 시간에 좌우됩니다.
사용자 환경에 영향을 주지 않으면서 가져온 값을 가능한 한 빨리 앱에 적용하려면 앱에서 전체 화면 새로고침을 수행할 때마다 fetchAndActivate
에 호출을 추가해 보세요.
동적 링크: Android 앱에서 각 동적 링크에 두 번 연결하는 이유는 무엇인가요?
getInvitation
API는 저장된 동적 링크를 삭제하여 두 번 액세스하는 것을 방지합니다. 기본 활동 외부에서 활동이 트리거된 경우에 동적 링크를 삭제하려면 각 딥 링크 활동에서 autoLaunchDeepLink
매개변수를 false
로 설정하여 이 API를 호출해야 합니다.
알림 작성기: 알림 작성기와 클라우드 메시징의 차이는 무엇인가요?
알림 작성기는 Firebase 클라우드 메시징을 기반으로 개발된 경량형 서버리스 메시징 솔루션입니다. 사용자에게 친숙한 그래픽 콘솔을 갖춘 알림 작성기로 코딩 요구사항을 줄이면서 사용자에게 손쉽게 메시지를 발송하여 재사용을 유도하고 사용자층을 유지하며 앱 성장을 촉진하고 마케팅 캠페인을 지원할 수 있습니다.
Firebase 클라우드 메시징은 클라이언트 SDK 및 HTTP와 XMPP 서버 프로토콜을 통해 완전한 메시징 기능 모음을 제공합니다. 메시징 요구사항이 보다 복잡한 배포의 경우 FCM이 가장 적합한 선택입니다.
다음은 Firebase 클라우드 메시징과 알림 작성기에서 제공하는 메시징 기능을 비교한 표입니다.
기능 | 알림 작성기 | 클라우드 메시징 | |
---|---|---|---|
대상 | 단일 기기 | ||
주제를 구독하는 클라이언트 (예: 날씨) | |||
사전 정의된 사용자 세그먼트의 클라이언트(앱, 버전, 언어) | |||
지정된 애널리틱스 잠재고객의 클라이언트 | |||
기기 그룹의 클라이언트 | |||
클라이언트에서 서버로 업스트림 | |||
메시지 유형 | 알림(최대 2kb) | ||
데이터 메시지(최대 4kb) | |||
전송 | 즉시 필요 | ||
이후의 클라이언트 기기 현지 시간 | |||
애널리틱스 | 기본 제공 알림 애널리틱스 수집 및 유입경로 분석 |
알림 작성기: 기존 Google 클라우드 메시징(GCM)을 사용하는 개발자인데, 알림 작성기를 사용해 보려고 합니다. 어떻게 해야 하나요?
알림 작성기는 누구나 Firebase용 Google 애널리틱스의 통계를 기반으로 특정 잠재고객을 타겟팅하는 알림을 보낼 수 있는 즉시 사용 가능한 솔루션입니다. 또한 알림 작성기는 모든 메시지에 유입경로 분석을 제공하여 알림 효과를 쉽게 평가할 수 있습니다.
기존 GCM 개발자가 알림 작성기를 사용하려면 GCM SDK에서 FCM SDK로 업그레이드해야 합니다. Android 및 iOS 앱 마이그레이션 가이드를 참조하세요.
예측: 앱에 Google 애널리틱스를 방금 추가했습니다. 언제부터 Console에 예측이 표시되나요?
예측은 사용자 행동을 기반으로 하며 사용할 수 있는 기록이 많을수록 좋습니다. Firebase 예측에는 최소한 2주 분량의 데이터가 필요합니다. 처음 1주는 활동을 학습하고, 그 다음 1주는 해당 활동의 결과(앱 제거, 지출 등)를 확인합니다. 처음 2주가 지나면 예측에서 더 긴 연속적인 사용자 활동을 관찰하므로 대개 예측 품질이 높아집니다.
예측: 새 사용자에 대한 예측을 만드는 데 시간이 얼마나 걸리나요?
Google 애널리틱스를 이미 설치하고 기준 데이터로 학습한 앱의 경우 빠르면 신규 사용자가 앱을 사용하기 시작한 다음 날에 예측을 만들 수 있습니다.
앱 색인 생성: Google 검색 색인은 단일 앱에서 여러 언어를 지원하나요?
Google 검색은 다음과 같이 여러 언어를 사용하는 경우를 지원합니다.
- 연결된 웹사이트에는 각 언어에 대한 고유 URL이 있고 각 웹 URL에 해당하는 하나의 앱 HTTP URL이 있습니다.
- 연결된 웹사이트에는 모든 언어에 대한 고유 URL이 있지만 하나의 HTTP URL만 있습니다. 이 앱은 시스템 언어 설정을 사용하여 올바른 언어 콘텐츠를 표시합니다.
- 연결된 웹사이트에는 모든 언어에 대한 하나의 URL(또는 하나의 언어만 지원)이 있고 해당하는 하나의 앱 URL이 있습니다. 사용자가 환경설정을 지정하지 않은 경우 웹사이트와 애플리케이션은 같은 언어로 콘텐츠를 표시해야 합니다.
앱 색인 생성: 앱 색인 생성은 하나의 앱에 여러 웹사이트를 지원하나요?
예. 연결된 각 웹사이트는 Google Play Console을 통해 Android 앱을 인증해야 합니다. 앱 인증 방법을 알아보세요.
앱 색인 생성: Search Console을 통해 사이트맵을 추가해야 하나요?
iOS는 사이트맵이 필요하지 않고 Android는 앱에서 HTTP URL을 지원하면 사이트맵이 필요하지 않습니다. 커스텀 URL의 경우 Search Console을 통해 사이트맵을 추가할 필요가 없습니다. robots.txt 파일에 사이트맵을 참조할 수 있고 Google 검색에서 이 사이트맵을 사용합니다. 사이트맵 관리 방법을 자세히 알아보세요. 하지만 Search Console을 통해 사이트맵을 제출하면 Search Console에서 제출하고 색인을 생성한 HTTP URL에 대한 통계를 볼 수 있습니다.
AdMob: Windows 앱을 Firebase에 연결할 수 있나요?
Windows 앱은 현재 Firebase 콘솔에서 지원되지 않습니다.
AdMob: Firebase 콘솔에서 AdMob 계정을 연결할 수 없는 이유는 무엇인가요?
AdMob 콘솔을 통해 AdMob 앱을 Firebase 앱으로 연결할 수 있습니다. 계정을 연결하려면 Firebase 프로젝트 소유자이면서 동시에 AdMob 관리자여야 합니다.
AdMob: 여러 사용자가 하나의 Firebase 앱에 AdMob 계정을 연결할 수 있나요?
아닙니다. 각 AdMob 계정에 기본 사용자 하나만 포함할 수 있습니다. 기본 사용자는 Firebase 서비스 약관에 동의하는 첫 번째 사용자입니다.
A/B 테스트: 실험을 몇 개까지 만들고 실행할 수 있나요?
프로젝트당 실험 20개가 허용되며 최대 6개의 실행 중인 실험과 최대 14개의 초안 실험으로 구성할 수 있습니다.
하지만 최종 사용자 및 앱 인스턴스는 일정 시간에 실험 3개에만 배치할 수 있습니다. 예를 들어 관련 사용자 집단의 100%를 타겟팅하는 실험 6개를 만들면 활성 상태인 실험 3개 이상에 해당하는 앱 인스턴스가 최근 실험 3개에만 전송됩니다. 이 경우 4번째, 5번째, 6번째 실험에는 사용자가 배치되지 않을 수 있습니다.