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

GCM + Notification 이용시 앱 상태에 따라 이벤트주기

0 추천
현재 GCM으로 부터 메시지를 받으면 notification 을 띄워주게 되어있습니다.

물론 Broadcast와 Serveice 를 이용해서죠.

 

앱 실행유무와 관계 없이 GCM 푸쉬메시지를 정상적으로 받아와 이벤트를 주고 있습니다.

이 단계에서.

앱 상테에 따라 이벤트를 다르게 주려 합니다.

앱에 실행되어 있으면 팝업으로 메시지를 보여주고, 앱이 종료되어 밑단에서 돌아갈 때는 Noticiation으로 보여주려 합니다.

 

앱 실행 상태를 체크할 수 있는 메소드가 별도로 있을까요?

어떻게 접근해야될지 조언을 구합니다.
개발자초심 (21,220 포인트) 님이 2014년 8월 26일 질문

2개의 답변

0 추천
현재 동작중인 프로세스 중의 패키지 이름을 가져와서 확인하는게 어떨까요?
쎄미 (162,410 포인트) 님이 2014년 8월 27일 답변
답변 감사합니다. 참고하겠습니다.
0 추천
안드로이드 API 보시면 PowerManager 라는 것이 있습니다.

이 클래스를 참조하시면 메소드 중 isScreenOn() 이라는 것이 존재하는데

스크린의 상태를 boolean 타입으로 반환합니다.

이것으로 판단하여 푸시 메세지 도착 시 팝업 또는 노티 처리하시면 될듯합니다.

 

P.S

적절한 API 사용인지는 모르겠으나  저는 이렇게 스마트폰 상태에 따라 푸시 메세지 처리한적이 있어 남기고 갑니다^^
소니에르 (140 포인트) 님이 2014년 8월 27일 답변
답변 감사합니다. 덕분에 isScreenOn()이라는 것을 알아갑니다.
허나 이 부분은 스마트폰이 켜져 있음을 인식하는 듯 합니다.

특정앱이 실행되어있는지를 확인해야 될 듯 한데, ActivityManager도 뭔가 정상적으로 처리가 안되는 듯 하네요.
조금더 알아봐야겠습니다. 덕분에 방향은 잡았습니다.
...