안드로이드 컴포넌트
안드로이드 컴포넌트
- 컴포넌트는 안드로이드 앱을 구성하는 기본 요소이다.
- 각 구성 요소는 시슴템이나 사용자가 앱에 들어갈 수 있는 진입점이 되면 경우에 따라서는 다른 구성 요소에 종속되는 경우도 있다.
-
컴포넌트 종류는 네 가지로 Activity, Service, Content Provider, Boardcast Receiver 가 있다.
- Activity
- UI를 구성하는 기본 컴포넌트로 기본적으로 인ㅇ터페이스를 포함한 화면 하나를 나타낸다.
- 예를 들어 상품목록을 보여주는 화면이 있고 특정 상품을 선택했을때 주문정보 화면이 나타난다고 하면 두 개의 서로 다른 Activity로 이루어진 것이라 이해하면 된다.
- 각 Activity에 대한 연결은 Intent 라는 것을 통해 이루어진다.
- 여러 화면으로 구성된 앱을 만드는 것을 설계 패턴을 잘 따라야 한다.
- 앱의 성격에 따라 여러 Activity 로 구성하기도 하고 Fragement를 사용하기도 한다.
- Service
- UI 없이 백그라운드로 수행되는 앱의 형태이다.
- 다른 앱을 사용하는 동안 음악이 계속 재생된다거나 네트워크를 통해 데이터를 가지고 오는 작업등이 대표적이다.
- 효과적인 백그라운드 작업을 위해 JobScheduler 를 사용할수도 있다.
- Content Provider
- 파일시스템, SQLite 데이터베이스 등 앱간의 데이터 공유를 위한 컴포넌트이다.
- 적절한 권한을 가진 앱에 대해 Content Provider 를 통해 특정 데이터를 읽고 쓸 수 있도록 한다.
- 예를 들어 앱에서 주소록에 있는 데이터를 접근하고자 하는 경우를 생각해 볼 수 있다.
- Broadcast Receiver
- 특정 이벤트가 발생하는 경우 앱에 전달하도록 지원하는 컴포넌트이다.
- 현재 실행되지 않은 앱에서 시스템이 브로드캐스트를 전달할 수 있는데, 특정 시점에 울리는 알람을 설정하는 경우 앱이 실행되어 있지 않아도 해당 시점에 알림을 전달받을 수 있게 된다.
- 배터리 부족 경고 역시 Broadcast Receiver 를 통해 전달됩니다.
- 별도의 화면을 가지고 있지는 않지만 상태표시줄 알림을 생성해 사용자로 하여금 이벤트가 발생했음을 전달할 수 있다.
Comments