HEROJOON 블로그(히로블)
FCM 시작하기 본문
FCM이란
FCM(Firebase Cloud Messaging)은 Firebase에서 제공되는 Cloude Messaging Service이며 서비스가 종료된 GCM을 대신하는 서비스이다. Android에 메시지를 전송할 수 있도록 서비스를 제공하는 교차 플랫폼 무료 메시징 솔루션이다.
(참고링크 : https://firebase.google.com/docs/cloud-messaging?hl=ko)
GCM(Google Cloud Messaging)의 경우 FCM에 앞서 Google Android에 메시지를 전송할 수 있도록 제공되었던 서비스이다. 2019년 4월 10일(UTC기준)으로 서비스가 종료되었다.
Firebase는 2014년 10월에 Google에 인수된 기업으로 현재는 Google Cloud 전반적인 다양한 서비스를 모바일, 웹, 앱 등의 교차플랫폼으로 통합할 수 있도록 지원하고 있다.
쉽게 정리하면,
- FCM Push를 전송하기 위한 서버에서는 Firebase에서 제공하는 FCM Admin SDK나 FCM 서버 프로토콜을 이용하여 Push를 전송할 수 있다.
- FCM Push 메시지를 받기 위한 앱에서는 앱에 맞는 Firebase 및 FCM SDK설정을 해주면 FCM Push 메시지를 받을 수 있다.
목적
이 글의 목적은 FCM을 이용하여 Android앱에 메시지 전송하는 기능을 구현해보는 것입니다.
- FCM을 급하게 사용해봐야 하는 경우를 위해서 글을 작성했습니다.
- 또한 어디부터 접근해서 개발을 해야하는지 모르겠는 분들에게 어떤 방법으로 문서를 보고 프로젝트에 해당 기능을 어떻게 적용할 수 있는지에 대해서 알기 쉽게 정리했습니다.
FCM.. 당황하지 말고 Start..!
1. 개발환경
- JDK : JDK8
- Build : Gradle 5.2
- FCM App (Android Studio 3.5.3)
- FCM Push발송 API Server 프로젝트 (Framework : Spring Boot 2.2.4)
2. 공통 환경 셋업
- JDK 설치
- Gradle 설치
3. FCM App 프로젝트 생성 (Receiver)
3-1. Android Studio 환경 셋업
- Android Studio 설치
- FCM 앱 프로젝트 생성
- Android Studio 환경 셋업 (Build / Plugin / Android SDK Download)
- 생성한 프로젝트를 Android 애뮬레이터로 띄워보기
3-2. Android 앱 프로젝트에 Firebase설정
- Firebase 프로젝트 생성
- Firebase 구성파일 생성 (Android앱 용)
- Firebase 의존 Library 추가
3-3. Android 앱 프로젝트에 FCM설정 및 코드작성
- Firebase 개발 가이드 문서로 이동하기
- Firebase에서 제공하는 Cloud Messaging Library 추가
- FCM Push를 받기 위한 앱 설정
- FCM Push 테스트를 위한 코드 작성
4. FCM Push발송 API Server 프로젝트 생성 (Sender)
4-1. Firebase Push전송 구현을 위한 준비
- Firebase 개발 가이드 문서로 이동하기
- FCM Push 전송을 위한 방법 2가지
4-2. Push 전송 프로젝트 생성
- Spring Boot 프로젝트 생성
4-3. Firebase Admin SDK를 이용한 Push 전송
- Firebase Admin SDK 의존 Library 추가
- Firebase Admin 인증 초기화
- Push 발송 API 구현 - 특정 기기에 메시지 전송
4-4. FCM 서버 프로토콜을 이용한 Push 전송
- FCM 서버 엔드포인트
- FCM 서버 프로토콜 인증
- Push 발송 API 구현 - 특정 기기에 메시지 전송
2020/02/24 - [Backend] - Android Studio 환경 셋업
2020/02/28 - [Backend] - Android 앱 프로젝트에 Firebase설정
2020/02/28 - [Backend] - Android 앱 프로젝트에 FCM설정 및 코드작성
2020/02/24 - [Backend] - Firebase Push전송 구현을 위한 준비
2021/08/15 - [Backend] - Push 전송 프로젝트 생성
2020/03/05 - [Backend] - Firebase Admin SDK를 이용한 Push 전송
2020/03/05 - [Backend] - FCM 서버 프로토콜을 이용한 Push 전송
'Backend' 카테고리의 다른 글
Android 앱 프로젝트에 Firebase설정 (0) | 2020.02.28 |
---|---|
Firebase Push전송 구현을 위한 준비 (0) | 2020.02.24 |
Android Studio 환경 셋업 (0) | 2020.02.24 |
Couchbase 시작/종료하기 (0) | 2019.12.11 |
Mybatis에서 resultType Map을 Camel로 변환하기 (3) | 2019.11.19 |