본문 바로가기

Android

안드로이드 4대 컴포넌트

안드로이드 4대 컴포넌트

안드로이드 어플리케이션은 컴포넌트로 구성되어있다.

 

안드로이드의 4대 컴포넌트

1. 액티비티(Activity)

2. 서비스(Service)

3. 방송 수신자 (BroadCast Receiver)

4. 콘텐트 제공자 (Content Provider)

 

- 각 컴포넌트들은 하나의 독립적인 형태로 존재한다.

- 각 컴포넌트들은 고유의 기능을 수행한다.

- 각 컴포넌트들은 인텐트를 통해 서로 상호작용한다.

 


1. 액티비티(Activity)

액티비티는 사용자와 상호작용을 담당하는 인터페이스이다. 즉 UI 화면을 담당하는 컴포넌트이다.

 

- 어플리케이션은 반드시 하나 이상의 액티비티를 가지고 있어야 한다.

- 두개의 액티비티를 동시에 보여줄 수 없다.

- 다른 어플리케이션의 액티비티에 접근할 수 있다.

- 액티비티 내에서 프래그먼트를 추가하여 화면을 분할시킬 수 있다.

 

2. 서비스(Service)

서비스는 사용자와 직접적으로 상호작용하는것이 아닌 백그라운드에서 실행되는 컴포넌트이다. 보통 오랜 시간이 걸리는 작업, 원격 프로세스를 위한 작업, 계속 실행을 해야하는 작업을 할 때 사용된다.

 

- UI를 가지지 않고 백그라운드에서 수행된다.

- 한번 시작이 된 서비스는 어플리케이션이 종료되어도 백그라운드에서 계속 실행된다.

- 네트워크를 사용하여 데이터를 가져온다.

- 모든 서비스는 Service 클래스를 상속받아 사용한다.

 

 

3. 방송 수신자 (BroadCast Receiver)

방송수신자는 안드로이드 디바이스에서 발생하는 이벤트 및 정보를 받아 반응하는 컴포넌트이다. 

네트워크 끊김, 문자 수신, 배터리 부족 알림 등 과 같은 정보를 받아 처리를 해야 할 필요가 있을때 동작한다.

 

- 디바이스에서 발생하는 일 중 어플리케이션이 알아야 하는 상황이 발생하면 알려준다.

- 거의 대부분 UI를 가지지 않는다.

- BroadcastReceiver(수신기) 를 통해 디바이스의 상황을 감지하고 적절한 작업을 수행한다.

 

 

4. 콘텐트 제공자 (Content Provider)

콘텐트 제공자는 데이터를 관리하고 다른 어플리케이션의 데이터를 제공해주는 컴포넌트이다.

 

- 파일 입출력 / SQLite DB/ Web등을 통하여 데이터를 관리한다.

- 안드로이드는 기본적으로 주소록, 이미지, 오디오 등 주요 데이터에 대한 내장 Content Provider를 제공한다.

- 콘텐트 제공자를 통하여 다른 어플리케이션의 데이터도 변경할 수 있다.

- 데이터의 읽기(READ), 쓰기(WRITE)에 대한 퍼미션이 있어야 데이터 접근이 가능하다.

'Android' 카테고리의 다른 글

FloatingActionButton 구현  (0) 2021.03.13
당겨서 새로고침 기능 추가하기  (0) 2021.01.23
Activity 생명주기  (0) 2021.01.21
Toolbar 검색버튼 만들기  (0) 2021.01.15
Retrofit2 + Okhttp3  (0) 2021.01.12