안드로이드 앱의 실행 상태 확인 방법
FCM 개발 과정에서 앱의 실행 상태가 현재 활성화되어 있는지 아닌지를 판별하는 로직이 필요한 경우가 많습니다. 이러한 상황에선 앱의 실행 상태를 정확히 판별하는 것이 중요하며, 이를 위해 복잡한 과정을 거쳐야 할 수 있습니다.
이 글에서는 앱의 실행 상태를 확인하는 방법을 소개하고, 이를 위해 작성된 특정 코드를 공유합니다. 이 정보는 같은 고민을 가진 개발자들에게 도움이 될 것입니다.
Application 클래스에서 설정하는 방법
Application 클래스를 상속한 클래스에서는 onCreate 메소드 내에 아래와 같이 코드를 작성하여 앱의 실행 상태를 판별할 수 있습니다. 이때, 'activityStackCnt > 0'는 앱이 활성 상태(foreground)를, 'activityStackCnt == 0'은 앱이 비활성 상태(background)를 의미합니다.
이 방법은 사용자가 뒤로가기 버튼을 통해 앱을 종료하는 경우 'activityStackCnt == 0'이 되도록 설계되었습니다. 하지만 어떤 화면에서든 task kill을 통해 메모리를 제거하면 static으로 선언된 'activityStackCnt'는 int의 기본값인 0으로 초기화되므로, 이 방법은 예상치 못한 상황에서도 잘 작동합니다.
0 개의 댓글:
Post a Comment