0

인앱 요청을받을 때마다 사용자에게 알리고 싶습니다 (알림 만들기).
PHP가있는 MySQL 데이터베이스를 사용하고 있습니다. -에서 user_id_req 필드 값이 변경이 앱이 알림을 만들어야 할 때마다 Android 알림 : GCM 또는 서비스

. 나는 App Start에서 NotificationManager으로 그것을 수행 할 수 있었고 DB를 점검 할 수 있었지만, 실시간으로 그것을하고 싶다. 즉, 값이 바뀌 자마자.

GCM을 사용하여 백그라운드에서 실행되는 요청이나 서비스를 처리하고 매분마다 데이터베이스를 검사해야합니까?

+0

GCM 대 서비스? 당신은 사과와 자전거를 비교하고 있습니다. –

+0

전혀 도움이되지 않습니다. 백그라운드 프로세스를 수행하기 위해 서비스를 사용할 수 있다고 생각했습니다. 데이터베이스 필드 값을 확인하십시오 - 그렇게 할 수 있습니까? –

+0

내 의견으로는, 당신이 말하고있는 일에 대한 서비스가 너무 커 보이네요. 어떤 일이 일어 났을 때 사용자에게 알려야합니다. 나는 이것을 밀어 넣는 것이 올바른 방법이라는 신호로 삼을 것입니다. – marino

답변

0

당신은 이어야합니다.은 절대적으로 폴링 모델이 아닌 GCM을 사용해야합니다.

매분마다 네트워크 요청을하는 것은 매우 나쁜 습관입니다. 배터리 사용량이 현저하게 늘어날 것입니다. 또한 서비스가 깨우기 잠금 장치 (예 : )를 보유하지 않으면 장치가 잠자기 상태가되고 사용자가 장치를 다시 깨울 때까지 요청이 중지됩니다. 또 다른 문제는 앱이 깨어나서 부팅 할 때 서비스를 시작하지 않으면 사용자가 기기를 다시 시작할 때마다 폴링이 중지된다는 것입니다.

대부분의 GCM 자습서에서도 Service을 만들 것입니다. 너를 혼란스럽게하지 마라. 사용자에게만 알림을 표시하는 경우 Service이 필요하지 않으며 간단한 BroadcastReceiver이 잘 작동합니다.