본문 바로가기
프로그래밍 놀이터/안드로이드, Java

[android] Doze 모드와 GCM high priority 조합 중 주의해야 할 것

by 돼지왕 왕돼지 2019. 1. 31.
반응형

[android] Doze 모드와 GCM high priority 조합 중 주의해야 할 것


https://android-developers.googleblog.com/2015/10/how-google-cloud-messaging-handles-doze.html?linkId=17513523



-

Doze 모드에 들어갔어도 High Priority GCM 을 받으면 wake up 되면서 일 처리를 할 수 있는 것으로 대부분의 개발자가 알고 있다.

그리고 그것을 남용하는 케이스가 있는데, 사실 가이드는 battery save 를 위해 꼭 필요한 경우가 아니면 normal priority 를 사용을 권장한다.

( 실제 요즘 안드로이드 최신 버전의 트랜드를 봐도 적절하지 않은 API 사용들에 대해 제재가 가해지는 형국이다.. )



-

Normal priority 를 사용할 경우에는 Doze 모드에서 message 들이 queue 에 쌓여있다가, 나중에 maintenance window 에 들어왔거나, Doze 모드에서 빠져나왔을 때, 쌓여있던 메시지가 받아진다.


이건 모두들 알고 있을테지만, 여기서 중요한 것은 “time-to-live” 가 Doze 모드동안 expire 된다면 해당 메시지는 받아지지 않는다. (TTL=0 인 케이스 포함)




반응형

댓글