안드로이드 4대 컴포넌트는 액티비티, 서비스, 브로드캐스트 리시버, 컨텐츠 프로바이더입니다.
사용자와 상호작용할 수 있는 화면, 살아있는 화면 , 활동하는 화면. 사용자가 행동(터치, 슬라이드등)을 했을 때 액티비티가 사용자의 행동에 맞게 반응. 액티비티는 사용자와 상호작용하기 위한 진입점. 사용자 인터페이스를 포함한 화면 하나를 나타낸다.
서비스는 백그라운드에서 앱을 계속 실행하기 위한 다목적 진입점. 이는 백그라운드에서 실행되는 구성 요소로, 오랫동안 실행되는 작업을 수행. 서비스는 사용자 인터페이스를 제공하지 않습니다. 예를 들어, 서비스는 사용자가 다른 앱에 있는 동안에 백그라운드에서 음악을 재생하거나, 사용자와 액티비티간의 상호작용을 차단하지 않고 네트워크를 통해 데이터를 가져올 수 있다.
ex)음악어플
안드로이드 OS에서 나오는 방송을 시스템 전체에 뿌린다. 그 방송을 수신하는 용도. 시스템이 정기적인 사용자 플로우 밖에서 이벤트를 앱에 전달하도록 지원하는 구성 요소로, 앱이 시스템 전체의 방송 알림에 응답할 수 있게 한다. Broadcast Receiver도 앱으로 들어갈 수 있는 또 다른 명확한 진입점이기 때문에 현재 실행되지 않은 앱에도 시스템이 브로드캐스트를 전달할 수 있다.
ex)문자오는 방송에 노티, 알람.
데이터를 관리하고 다른 어플에 데이터를 제공해주는 컴포넌트. 파일 시스템, SQLite, 웹상이나 앱이 액세스 할 수 있는 다른 모든 영구 저장 위치에 저장 가능한 앱 데이터의 공유형 집합을 관리한다. 다른 앱은 콘텐츠 프로바이더를 통해 해당 데이터를 불러오거나, 콘텐츠 프로바이더가 허용할 경우에 수정도 가능하다.
ex) 카카오톡에서 핸드폰에 저장된 전화번호 가져오는 경우, 컨텐츠 프로바이더를 통해 가지고 온다.