[Android] Foreground, Background, Foreground Service, Background Service 개념 정리

박재빈·2025년 2월 11일
1

1. Foreground (포그라운드)

  • 사용자가 현재 보고 있는 앱 상태
  • 앱이 화면에 표시되고 있으며, 사용자의 입력을 받을 수 있는 상태

2. Background (백그라운드)

  • 앱이 화면에서 사라졌지만 실행 중인 상태
  • 사용자가 앱을 사용하지 않고 있지만, 앱이 실행되고 있다.
  • 안드로이드 시스템이 필요하면 백그라운드 앱을 종료할 수 있다.
  • Android 8.0(API 26) 이상에서는 백그라운드 실행 제한이 있다.

예시

  • 홈 버튼을 눌러 앱을 빠져나왔지만, 앱이 종료되지 않고 백그라운드에서 실행 중인 경우
  • 다른 앱을 실행했지만 이전 앱이 메모리에 남아 있는 경우

3. Foreground Service (포그라운드 서비스)

  • 백그라운드에서 실행되지만, 사용자에게 노출되는 서비스
  • 안드로이드 시스템이 임의로 종료하지 않는다.
  • 알림(Notification)을 필수로 제공해야 한다.

예시

  • 음악 앱 : 음악을 재생하는 동안 알림 표시
  • 운동 기록 앱 : 실시간으로 운동 기록

4. Background Service (백그라운드 서비스)

  • Background Service는 사용자가 앱을 직접 사용하지 않는 상태에서 실행되는 서비스
  • UI 없이 백그라운드에서 특정 작업을 수행

특징

  • 사용자가 보지 않는 상태에서 실행되는 서비스
  • UI 없이 백그라운드에서 작업을 수행한다.
  • 시스템이 메모리가 부족 시 종료할 가능성이 높다.
  • 일정 시간이 지나면 자동 종료된다.

0개의 댓글