개발자가 되기위한 첫 걸음
안드로이드 4대 컴포넌트
안드로이드의 4대 컴포넌트란?
안드로이드의 주요 4대 컴포넌트는 액티비티(Activity), 서비스(Service), 브로드캐스트 리시버(Broadcast Receiver), 콘텐트 프로바이더(Content Provider)를 말합니다. 각 컴포넌트들은 하나의 독립된 형태로 존재하며, 정해진 역할을 수행합니다. 또한 각 컴포넌트들은 인텐트(Intent)라는 일종의 메시지 객체를 사용하여 상호 통신을 합니다. 이들 중에서 가장 많이 사용하는 것은 액티비티이지만 나머지 컴포넌트도 매우 중요하므로 어떤 기능을 하는지 알아둬야 합니다.
다음 그림은 안드로이드 애플리케이션을 구성하는 안드로이드 4대 컴포넌트를 그림으로 나타낸 것입니다. 당연하겠지만 이 중에서 가장 많이 사용하는 컴포넌트는 사용자에게 보여지는 액티비티입니다.
추가적으로 안드로이드 3.0(API Level 11)부터는 프래그먼트가 추가되었습니다. 프래그먼트는 안드로이드 뷰도 아니고 4대 구성 요소로 보기에도 어렵습니다, 하지만 안드로이드 3.0이후부터는 안드로이드 애플리케이션의 핵심 컴포넌트로 봐도 무방할 정도로 매우 활용도 높습니다.
액티비티(Activity)
액티비티는 UI 화면을 담당하는 컴포넌트입니다.
안드로이드 애플리케이션은 반드시 하나의 액티비티를 가지고 있어야 합니다.
각 액티비티는 매니페스트파일에 등록 되어 있어야 합니다.
액티비티는 하나 이상의 view를 가질 수 있다.
서비스(Service)
서비스는 백그라운드에서 실행되는 컴포넌트로 오랫동안 실행되는 작업이나 원격 프로세스를 위한 작업을 할 때 사용됩니다.
UI를 가지고 있지 않습니다.
한번 시작된 서비스는 애플리케이션이 종료되고 다른 애플리케이션으로 이동해도 계속 백그라운드에서 실행된다.
모든 서비스는 Service 클래스를 상속받아서 작성됩니다.
네트워크를 통하여 데이터를 받아올 수도 있습니다.
방송수신자(Broadcast Receiver)
- 방송수신자는 안드로이드 단말기에서 발생하는 다양한 이벤트 정보(화면이 켜지거나 꺼짐, 리부팅 등)를 받고 반응하는 컴포넌트입니다.
- 일반적으로 UI를 가지고 있지 않습니다.
- 단말기에서 발생하는 일 중에서 애플리케이션이 알아야 하는 상황이 발생하면 방송을 해줍니다.
- 수신기(Broadcast Reciver)를 통해 상황을 감지하고 적절한 작업을 수행합니다.
컨텐트 제공자(Content Provider)
- 컨텐트 제공자는 데이터를 관리하고 다른 애플리케이션 데이터를 제공하는 컴포넌트입니다.
- 데이터는 파일 시스템이나 SQLite 데이터베이스, 웹상에 저장될 수 있습니다.
- 컨텐트 제공자를 통해서 다른 애플리케이션의 데이터를 쿼리하거나 변경가능합니다.
마무리
다음엔 액티비티, 서비스, 브로드캐스트 리시버, 콘텐트 프로바이더, 프래그먼트 등에 대해서 알아보겠습니다.
관련글
내용이 도움이 되셨거나 초보 블로거를 응원하고 싶으신 분은 아래 하트♥공감 버튼을 꾹 눌러주세요!
내용의 수정이 있거나 도움이 필요하신 분은 댓글을 남겨주세요!
'Android' 카테고리의 다른 글
[Android] Context 란? (0) | 2019.01.09 |
---|---|
안드로이드 4대 컴포넌트란 무엇인가? - Activity (0) | 2019.01.09 |
Parcelable vs Serializable (0) | 2019.01.09 |
안드로이드 WebRTC 시작하기 -3 (0) | 2018.12.25 |
안드로이드 WebRtc 시작하기 -2 (0) | 2018.12.25 |