라벨이 GCM인 게시물 표시

Node.js를 이용하여 Android 푸시기능 구현

안녕하세요 남산돈가스입니다.

오늘은 지난 포스팅에 이어 Nodejs를 이용하여 Android 푸시기능을 구현해보겠습니다.

개인적으로 gcm은 apple의 apns보다는 푸시기능 구현이 더 간단하다고 생각하는데요.
그 이유는 apns 같은 경우엔 인증서 및 키 파일을 발급받는 과정이 복잡한데 비해 gcm은 개발자 콘솔에서 프로젝트를 등록하고 gcm 서비스만 활성화하면 API Key와 sender ID 값을 바로 제공해주기 때문에 이것들을 가지고 바로 push기능을 구현할 수 있기 때문입니다.

API Key을 발급 받는 과정은 http://blog.saltfactory.net/node/implementing-push-notification-service-for-android-using-google-play-service.html 에 이해하기 쉽게 제공되고 있으니 참고하시기 바랍니다.

그렇다면 API Key와 SenderId값을 발급받았다는 전제 하에 본격적으로 NodeJs를 이용하여 안드로이드 푸시 기능을 구현해보겠습니다.

일단, NodeJS에서 gcm기능을 이용하기 위해선 gcm 모듈이 필요합니다.

npm install node-gcm
gcm 모듈을 다운받았으면 js 파일을 하나 생성합니다.

var gcm = require('node-gcm'); var message =newgcm.Message({ collapseKey: 'demo', delayWhileIdle: true, timeToLive: 3, data: { key: 'push Test', } });
install한 gcm 모듈을 선언하고, message라는 변수에  gcm.Message 를 초기화 합니다.
이 Message라는 메서드에 전송 될 푸시에 대한 설정 정보가 json 형식으로 들어가게 됩니다.
간단하게 Message에 대한 설정들을 알아보면, collapseKey는 푸시할 유사 메시지별로 동일한 c…

푸시기능과 GCM / APNS

이미지
안녕하세요 남산돈가스입니다.

이번 포스팅은 iFriendsPet v.1.11에 업데이트 될 기능인 푸시기능에 대해서 정리하는 시간을 가져보려고 합니다.

이 주제는 총 3개의 포스팅으로 나누어 다음과 같은 순서로 게시될 예정입니다.
#1 푸시기능과 GCM / APNS
#2 Node.js를 이용하여 iOS 푸시기능 구현
#3 Node.js를 이용하여 Android 푸시기능 구현

그 첫번 째 포스팅으로 푸시기능의 개념과 GCM / APNS에 대해서 알아보도록 하겠습니다.

일단 저도 푸시기능을 처음 개발해보는 사람으로서 푸시기술이라는게 정확히 어떤 의미인지부터 궁금했습니다.
위키피디아에서 검색한 푸시란, 인터넷 상에서 어떤 전송 요청이 중앙 서버에서 시작되는 정보 전달 방식이라고 설명하는데요. 덧붙여, 이 푸시는 전송 요청이 클라이언트에서 시작되는 풀 기법과 대비되는 것이라고도 표현합니다.

위의 설명을 살펴보면 풀 방식과 푸시방식이 존재하는데, 이 두 방식은 서로 상반 된 기능을 하고 있다고 짐작해볼 수 있습니다.
간단하게 정리해보자면, 푸시 기법은 사용자(클라이언트)가 어떠한 이벤트를 실행 함에 따라 서버 사이드에서 그 이벤트에 대한 정보 등을 자동으로 제공해주는 서비스라고 할 수 있고, 풀 기법은 이와 반대로 사용자가 직접 필요한 정보를 서버쪽에 요청하여 해당하는 정보 등을 제공받는 형식이라고 말할 수 있습니다.

모바일 서비스가 주를 이루기 전의 푸시서비스는 흔히 뉴스, 메일링 서비스 등을 생각해 볼 수 있습니다. 웹 상에서 뉴스를 구독하거나 메일 수신에 동의하는 절차를 통해 자동으로 서버에서 클라이언트에게 주기적인 정보를 제공해왔었습니다.
이런 푸시 서비스는 스마트폰의 급격한 성장을 통해 모바일 서비스들의 기본적이고 중요한 기능으로 자리 잡았습니다.
이러한 이유들을 통해 우리 iFriendsPet 모바일 서비스에서도 사용자와의 지속적인 커뮤니케이션과 사용성 증가를 위해 푸시 기능을 도입하고자 생각했습니다.
그렇다면 지금부터 푸시기능을 어떻게 개발할 것인지 알아보도…