본문 바로가기

개발 관련 지식/안드로이드(Android)

[안드로이드] GCM, FCM 차이점

* GCM, FCM 차이점



안녕하세요 송군함대입니다.

오늘은 구글 PUSH 메시지 기능인 GCM, FCM 의 차이점에 대해 알아보도록 하겠습니다.


먼저, GCM과 FCM이 어떤 것인지 간략하게 알아보겠습니다.


- GCM : Google Cloud Messaging 의 약자 로 Android & IOS  를 지원한다.  구글에서 제공하는 서버와 클라이언트 APP 간에 PUSH 메시지를 보낼수 있는 서비스다.


- FCM : Firebase Cloud Messaging 의 약자로 GCM의 새로운 버전이다. Android & IOS & Mobile Web 등의 다양한 플랫폼을 모두 지원한다.


FCM 이 생겨나게된 이유는 위에 Mobile Web 의 중요도가 높아짐에 따라 모든 Mobile Application 만이 아니라 Mobile Web 등의 모든 플랫폼에서 사용 가능한 서비스가 필요하여 생겨났습니다.


그렇다면 GCM 과 FCM 차이점이 어떤 것인지 요약해서 살펴보겠습니다.


1. Android & IOS 만 지원되던 GCM 과 달리 FCM은 Mobile Web 까지 확장되어 지원된다.

2. 클라이언트 APP 단에서 구현시 번거로웠던 등록 & 구독 로직을 FCM 라이브러리에 포함시켜 간편화하였다.

3. PUSH 전송을 위한 서버 구현 역시 GCM에서는 com.google.android.gcm.server 패키지를 import 해서 구현이 가능했지만, FCM에서는 전송을 위한 데이터를 세팅하여 직접 소켓 통신을 통해 구글 서버 측에 요청할 수 있게 되었다.


구글 측의 작년(2018년도) 발표에서는 GCM 서비스를 2019년 4월 11일부로 종료하겠다고 공식 발표하였습니다.

앞으로는 FCM SDK 로 모두 전환되어야 할 것으로 보여집니다.