iOS

[iOS + Firebase] Analytics, Crashlytics, Messaging 사용하기

하노 Hano 2022. 10. 11. 23:33

안녕하세요 하노입니다 :)

얼마 전 앱을 출시하고 Firebase를 이용해서 실제로 사용자들이 얼마나 앱을 사용하는지 확인해보려고 합니다!

 

물론 App Store Connect에서 확인할 수 도 있지만, 실시간으로 집계가 되지 않기 때문에,

Firebase를 이용하여 실시간으로 확인해보겠습니다!

 


1. 사전 준비

  • 실제 iOS 기기 - 시뮬레이터에서는 기본적으로 푸시 알림 테스트가 불가능하기 때문에 실제 iOS 기기가 필요합니다.
  • 애플 개발자 계정 - 애플 공식 개발자 계정이 있어야 합니다. ( 연 129,000원 결제를 해야 합니다! )

 

2. Firebase 등록하기

처음 Firebase에 등록하기 위해선 해당 앱의 Bundle identifier를 알아야 합니다.

 

Bundle identifier는 Project -> Target -> identify -> Bundle identifier

 

그다음 Firebase 주소로 들어갑니다.

 

https://firebase.google.com/?hl=ko&gclid=CjwKCAjwqJSaBhBUEiwAg5W9p9XsRe3zpA4ASDmc-A-5Pa6AjE9cq9BBeOqubeUwwPphtKEtVPW9HhoCGWUQAvD_BwE&gclsrc=aw.ds

 

Firebase

Firebase는 고품질 앱을 빠르게 개발하고 비즈니스를 성장시키는 데 도움이 되는 Google의 모바일 플랫폼입니다.

firebase.google.com

 

 

 

이후 프로젝트를 새로 만들어서 아래 과정을 걸칩니다.

 

 

 

 

 

이후 잠시만 기다리시면 아래와 같이 프로젝트가 생성됩니다. 여기서 iOS를 눌러서 들어가 줍니다.

 

 

 

 

여기서 아까 Bundle identifier를 Apple 번들 ID에 넣어줍니다.

 

 

 

그럼 2단계로 넘어가집니다. 여기서 구성 파일을 다운로드하고 해당 앱 프로젝트에 넣어주라고 합니다.

여기서 시키는 대로 따라 하면 됩니다! 

 

 

파일을 추가해주고 아래와 같이 설정한 후 Finish를 눌러줍니다.

 

여기서 SDK를 추가하라고 합니다. 저는 SPM으로 추가해주겠습니다.

 

 

저는 오늘 Analytics, Crashlytics, Messaging를 사용할 것이기 때문에,

아래와 같이 3가지를 선택하여 설치해줍니다.

 

 

다음 단계로 넘어가면 초기화 코드를 추가하라고 나옵니다. 프로젝트에서 AppDelegate 파일로 들어가서 복붙 해줍시다!

 

 

 

 

그리고 콘솔로 이동하면 끝납니다! 사실 위에 코드를 적어준 것만으로도 Analytics  기본 설정은 끝납니다!

 

 

3. Crashlytics 설정하기

Crashlytics를 사용하기 위해선 문서를 봐야 합니다. 우측 상단에 문서로 이동 버튼을 눌러서 

출시 모니터링 -> Crashlytics로 이동합니다.

 

https://firebase.google.com/docs/crashlytics?authuser=0&hl=ko 

 

Firebase Crashlytics

Apple, Android, Flutter, Unity를 위한 강력한 비정상 종료 보고 솔루션으로 앱 문제에 대한 명확하고 활용 가능한 분석 정보를 확인해 보세요.

firebase.google.com

 

 

Crashlytics 시작하기를 누르면 단계별로 설명이 나옵니다.

여기서 저희는 라이브러리를 추가할 때 Crashlytics까지 추가해줬죠??? 그래서 1단계는 가뿐하게 건너뛰겠습니다. ㅎㅎ

 

 

 

 

2단계는 dSYM 파일 자동 업로드입니다. 위와 마찬가지로 시키는 대로 따라 해 보겠습니다.

 

 

 

 

프로젝트에서 Targets -> Build Settings -> Debug information Format을 검색합니다.

 

 

여기서 Debug 부분을 DWARF with dSYM File로 바꿔줍니다.

 

 

다음은 새로운 실행 스크립트 섹션을 펼칩니다.

 

 

 

아래 사진처럼 Build Phases 내 좌측 상단에서 New Run Script Phase를 클릭해서 새로운 스크립트를 생성합니다.

 

 

 

 

그리고 각각의 경로를 추가해줍니다.

 

 

 

이러면 Crashlytics설정이 끝납니다!! 만약 테스트를 해보고 싶다면, 강제로 Crash를 일으켜서 확인해보시면 됩니다!

 

 

4. Messaging 설정하기

Push 알림을 설정하기 위해서는 Firebase에서 설정하기 전에 애플에서 키를 받아와야 합니다.

사실 앱은 바로 서버와 연결되어있는 게 아닌, 중간다리 역할을 하는 APNs(Apple Push Notification service)가 있기 때문이죠!

 

따라서 애플 Developer 내 계정에 에 들어와서 인증서를 클릭하여줍니다.

 

https://developer.apple.com/account/

 

로그인 - Apple

 

idmsa.apple.com

 

 

 

그리고 Keys를 클릭하고 + 버튼을 클릭하여 새로운 키를 생성해줍니다. 이때 키는 2개 이상 가지고 있을 수 없습니다!

 

 

Key Name을 적어주고 Apple Push Notifications service를 클릭 후 Continue, register을 차례로 눌러줍니다.

 

 

 

그러면 여기서 이런 문구가 뜨는데 여기서 꼭!!! Download를 눌러서 p8 확장자로 되어있는 파일을 다운로드해주셔야 합니다.

만약 Done을 누르도 다시 다운로드하으려고 해도 한 번밖에 다운로드하지 못하니 삭제하고 다시 만들어야 할 수 도 있습니다 ㅠㅠ

 

그리고 화면 밑에 나와있는 Key ID는 잠시 복사해주세요!

 

 

이후 Firebase 페이지로 다시 들어오셔서 프로젝트 개요 옆 프로젝트 설정 버튼을 눌러줍니다.

 

 

 

 

이후 프로젝트 설정 -> 클라우드 메시징 -> APN 인증 키를 눌러서 업로드를 클릭해서 파일과 방금 복사한 Key ID를 넣어줍니다.

 

 

 

팀 ID는 App Store Connect의 프로필에서 확인할 수 있습니다.

 

 

 

Analytics, Crashlytics와 마찬가지로 문서로 이동하여 단계별로 따라 해 주면 됩니다.

 

 

https://firebase.google.com/docs/cloud-messaging/ios/client?hl=ko&authuser=0 

 

Apple 플랫폼에서 Firebase 클라우드 메시징 클라이언트 앱 설정

2022년 10월 18일에 오프라인과 온라인으로 진행될 Firebase Summit에 참여하세요. Firebase로 앱을 빠르게 개발하고 안심하고 앱을 출시하며 손쉽게 확장하는 방법을 알아보세요. 지금 등록하기 의견 보

firebase.google.com

 

이후 Firebase에서 Messaging에서 알림 메시지를 클릭하여 메시지를 푸시하면 예정 시간보다 약간 걸릴 수 있지만,

푸시 알림이 오는 것을 확인할 수 있습니다.

 

 

 

 


 

오늘은 iOS + Firebase에 대하여 알아보았습니다.

 

뭔가 코드는 작성할 게 별로 없지만, 설정할 것도 많고 스크린샷도 많아서 글이 길어졌네요...ㅎㅎ

 

그럼 오늘 글은 여기서 마치겠습니다!!

 

감사합니다 :D