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

FCM메시지 수면모드, 절전모드시 전달안되는 문제

0 추천

안녕하세요.

node.js 서버를 기반으로 안드로이드로 메시지를 보내는 앱을 개발중에 있습니다.

핸드폰이 정상적으로 켜져 있을때는 메시지 수신이 아무이상 없구요.

수면모드, 절전모드일때만 메시지가 안오다가 화면을 키게되면 그때서야 도달을 합니다.

스텍오버플로우나 구글링으로 찾은 블로그글들 보면서 priority를 high 로 설정을 해라, 핸드폰 설정으로 절정상태로 전환하지 않을 앱에 등록을 해라 이런 조언들있어서 해봤지만 소용이 없구요.

여전히 절전모드시 FCM메시지는 바로 도달하지 않더군요.

시험기기는 노트9이고 안드로이드 버전은 10버전이구요 서버에서 메시지 보내는 코드는 다음과 같습니다.

var push_data = {
				to: token,
				priority : "high",
				notification: {
					title_loc_key : "notification_title_call",
					body_loc_key : "notification_message_call",
					sound: "default",
					click_action: "FCM_PLUGIN_ACTIVITY"
				},
			};			
var fcm = new FCM(serverKey);
fcm.send(push_data, function(err, response) {
	if (err) {
		console.error(err);
	}
});

다른 기기에서는 수면모드시 10분정도 딜레이 이후 전송되는 케이스도 있었습니다.

1. 혹시 priority가 적용이 안된건가요?

2. 아니면 다른 방법이 있을까요?

머터리개발 (140 포인트) 님이 2021년 5월 12일 질문

1개의 답변

0 추천

푸시 데이터의 json 포맷이 규격과는 다른 것 같네요.

https://firebase.google.com/docs/cloud-messaging/concept-options?hl=ko

https://developer.android.com/training/monitoring-device-state/doze-standby.html

가급적이면 파이어베이스 사이트의 가장 최근 버전의 문서를 참고하세요.

블로그의 글들이 outdated 된 경우가 너무 많아요.

Will Kim (43,170 포인트) 님이 2021년 5월 16일 답변
...