메뉴 건너뛰기

조회 수 6388 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

Android Push GCM 서버 구성 하기(3) 


전 포스트까지 진행 해서 앱에서 regId 를 추출까지 진행 했습니다 .

그러면 이제 마지막으로 서버로 부터 앱으로 푸시를 보내는 기능을 구성해보려 합니다 .


1. 서버 API KEY 생성


01.png




왼쪽 Credentials 를 선택 하고 하단의 Create new Key 를 선택합니다 .


02.png




Server Key 를 선택합니다.


03.png




04.png




그러면 이와 같이 Server 의 API Key 를 얻을 수 있습니다 .

이키가 나중에 서버 코드 작성 할 시 필요 합니다 .



2. 서버 jar 파일 삽입


gcm-server.jar 이 필요합니다 .

저는 메이븐을 사용 하고 있어서 mavenrepository 홈페이지를 통해서 받았습니다 .

Android SDK Manager 를 통해서도 받을 수 있습니다 .


http://mvnrepository.com/


06.png




gcm-server 로 검색합니다 .


07.png




그럼 하단에 이와 같이 라이브러리가 있습니다.

08.png


1.0.2 를 선택하고 들어 가면 아래와 같은 코드를 통해서 jar 를 받았습니다.

09.png



 

 


이렇게 진행 후에 하단의 서버 코드를 작성합니다.


2. 서버 코드 작성


Colored By Color Scripter

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
if(os.equals("android")){ // Android
            
            Sender sender = new Sender(API_KEY);                //푸시 보내는 객체 생성
            Message.Builder builder = new Message.Builder();    //푸시 메시지 만드는 객체
            builder.addData("message", message);
            builder.addData("summernerName", summernerName);
            builder.addData("boardId", boardId);
            builder.addData("facebookId", facebookId);
            Message msg = builder.build();
            
            Result result = null;
            try {
                result = sender.send(msg, board.getAddUsers().getPushId(), 5);            //푸시 전송
            } catch (IOException e) {
                e.printStackTrace();
            }
            
        }else{// IOS
            
        }


서버 코드 작성 부분 입니다 .

 

아까 위해서 추출한 Key 가 Sender 생성자 부분에 들어가게 됩니다 .

그후에 Message.Builder 를 통해서 보낼 메세지를 키와 값을 통해서 전달 합니다.


send 시에 첫번째 인자는 : android App 에서 추출한 regId 값,

              두번째 인자는 : 푸시 실패시 재시도 횟수 입니다 .


푸시 하는데 처음에는 오래걸리지만 정리만 잘해 놓으면 2시간이면 할 수 있는것 같습니다 .


List of Articles
번호 제목 날짜 조회 수
237 EditText의 글자 수 제한 걸기 2015.07.16 13881
236 Effects - Animate() 메서드 (여러가지 효과 동시 처리) file 2014.10.16 30623
235 Effects - FadeIn() / FadeOut() 메서드 (서서히 보이기 및 숨기기) file 2014.10.16 6069
234 Effects - Show() / Hide() 메서드 (보이기 및 숨기기) file 2014.10.16 5957
233 Effects - SlideToggle() 메서드 (슬라이드 업/다운) file 2014.10.16 6758
232 Effects - SlideUp() 메서드 (슬라이드업) file 2014.10.16 5999
231 Effects - Stop() 메서드 (애니메이션 효과 멈추기) file 2014.10.16 6225
230 Events - Unbind() 메서드 (이벤트 처리기 해제) file 2014.10.16 5749
229 Firebase - 푸시알림 보내기 file 2021.09.30 339
228 Firebase - 푸시알림 보내기 (2) 2021.09.30 768
227 Fragment를 통한 하단탭 예제1 file 2020.12.14 242
226 Fragment에서 Toast 사용하기 2020.12.14 371
225 FTPClient 를이용하여 ftp상 서버에서 데이터 다운로드 편 2014.08.28 9853
224 FTPClient 를이용한 데이터 업로드 하기 2014.08.28 6366
223 HTML5 Better semantic tags file 2014.09.04 5952
222 HTML5 Form 공부하기 -1- file 2014.09.04 5841
221 HTML5 Form 공부하기 -2- file 2014.09.04 6329
220 HTML5 Geolocation (구글 지도에 현위치 표시하기) file 2014.09.04 6810
219 HTML5 Speech Input (음성인식) API 2014.09.04 6454
218 HTML5 Web Storage -01- file 2014.09.04 5587
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved