마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

푸시 수신율을 올리는 방법?

0 추천

현재 웹관련 일을 하고있고, 앱개발은 해본적이 없는 초짜입니다.

그런데 이번에 스타트업 준비를 하면서 웹페이지로 개발하고 앱은 웹뷰로 웹페이지를 보여주고

푸시기능만 가지는 정도로 개발을 하려고 안드로이드를 공부하고 있는데

푸시는 그냥 GCM으로 하면 되겠거니 하다가 암초를 만났습니다.

수신율이 100%가 아니라고 하는거죠.;;; 뭐 완전 100%일거라고는 기대하지 않았습니다만

구글링을 해보니 생각보다 많이 수신율이 낮은듯 하네요.

대량으로 푸시를 하는건 아닙니다만 푸시로 인해 매출이 발생할수도 있는부분이라 걱정이 좀 되네요.

그래서 염치불구하고 몇가지 질문좀 드리겠습니다.

1. 대충의 GCM 수신율은?

2. 자체 푸시서버를 사용하면 수신율을 올릴수 있는가?

3. 수신율을 올리기위해 자체 푸시서버를 개발한다면 대충의 비용은?

4. 혹시나 기타 다른 좋은 방법이 있다면?

 

너무 모르는게 많아서 무작정 질문드렸네요. 읽어주셔서 감사합니다.

즐거운 주말 보내세요^^

사이타마 (1,090 포인트) 님이 2016년 6월 3일 질문

2개의 답변

0 추천
 
채택된 답변
gcm 수신률이라는게 어차피 구글쪽으로 api호출 하는것 말고는 방법이 없기 떄문에 ..

결과가 실패면 다시 api 호출하는 정도가 있겠구요.

수신율이라는건 서버쪽 문제가 아닌 각 개별 디바이스 문제기 때문에 gcm에서 수신률을 특별히 올릴수 있는 방법이 있을것 같지는 않구요..

GCM의 수신률은 체감상 90% 이상은 되는것 같은데

대량 푸시의 경우에는 종종 실패하는 경우도 꽤 많은것 같습니다.

자체 푸시서버를 둔다고 해도, GCM만큼의 성능이 나올지 모르겠네요.

GCM의 경우 구글에서 어느정도 성능이 보증(하지는 않지만)되어있긴 하니까요.

구글 gcm급의 클라우드 서비스를 직접 설계하느니

그냥 맘편히 gcm이용하는게 비용 및 시간적으로도 이득일겁니다.

 

 

그 외에,

알림 형태의 가장 좋은 방법은, 메세지 발송 서비스를 이용하는겁니다.

물론 건당 돈이 나가지만요... 반드시 로스 없이 보내야 한다면

SMS가 더 좋죠.
모나미153 (17,540 포인트) 님이 2016년 6월 3일 답변
사이타마님이 2016년 6월 3일 채택됨
감사합니다. 많은 도움되었습니다.^^
0 추천
4 번만 답변을 드리자면..

 

그동안 채팅 앱.. 몇 개 서비스하면서 제가 사용하는 방법입니다.

- 서버에서 앱으로 새 메시지가 있다는 푸시 메시지 발송

- 앱에서 푸시 메시지 받으면 서버에 접속하여 그 동안 수신하지 않은 전체 메시지 가져오기

- 알람으로 주기적으로 서버에 접속하여 수신된 메시지를 가져오도록 처리

- GCM 등록키(토큰)를 정상적으로 발급 받은 단말기일 경우 알람 주기 길게 설정

 

위와 같이 처리하면 GCM 메시지가 누락되더라도 다음 번에 메시지를 수신하면 수신하지 않은 전체 메시지를 가져오게 됩니다.

그리고, GCM 등록키(토큰)을 정상적으로 못 받아오는 기기 또는 상황이 종종 있습니다. 이에 대비하여 알람을 이용하여 주기적으로 새 메시지를 가져오는 방법도 사용했습니다.

배터리 및 네트워크 사용량을 줄이기 위해서 알람 주기를 기기 상태에 따라 변경하도록 처리 하였구요.

 

저의 경우 이렇게 처리하여 현재 메시지가 누락되는 일은 거의 없습니다.
isul (7,920 포인트) 님이 2016년 6월 3일 답변
앱에서 주기적으로 서버와 통신을 하는건 피하고 싶은데 최소한의 통신을 고려해 봐야겠군요. 감사합니다.
...