안드로이드 프로그램 구조의 구성요소

CODEDRAGON Development/Android

반응형

   

   

안드로이드 프로그램 구조를 이루는 구성요소

  • 뷰(View)
  • 액티비티 (Activity) 
  • 위젯(Widget)
  • 레이아웃(Layout)
  • 인텐트 (Intent)
  • 서비스 (Service)
  • 브로드캐스트 리시버(BroadcastReceiver)
  • 컨텐트 프로바이더 (Content Provider)

   

   

뷰(View)

뷰(View)는 사용자와 직접 상호작용을 하는 UI를 의미합니다.

   

 

액티비티 (Activity)

  • 하나의 화면을 컨트롤하는 객체로 (어플리케이션의 하나의 화면, 폰 화면)
  • 보통 액티비티와 UI화면은 일대일 대응 관계를 갖고 시스템 혹은 사용자로부터 시작된 이벤트에 반응(처리)합니다.
  • 레이아웃을 포함하며 UI오브젝트를 추가하여 사용할 레이아웃을 정의(화면을 구성)하게 됩니다.

   

   

위젯(Widget)

  • TextView, Button, EditText등 사용자의 입력을 받거나 화면에 데이터를 표시해 주는 Object
  • 컨트롤(control)과 같은 의미
  • 컴포넌트(component)와 같은 의미(Java AWT)

   

   

레이아웃(Layout)

액티비티들을 어떠한 방식으로 화면에 배치해 줄지를 결정해 주는 하나의 컨테이너 역할

UI오브젝트를 담고 있는 그릇역할.

   

 

인텐트 (Intent)

  • 액티비티간의 통신 수단이며 메시지에 대한 상세한 정보를 가집니다.
  • 예를 들어 주소록 목록 액티비티에서 편집 액티비티를 호출할 때 누구의 주소를 어떤 식으로 편집하라는 지시가 인텐트에 실려 전달됩니다.

   

 

서비스 (Service)

서비스는 주로 백그라운드에서 돌아가는 실행코드로, 일단 실행되면 휴대폰이 꺼질 때까지 돌아갑니다. 서비스는 일반적으로 사용자 인터페이스가 없습니다.

예) MP3 플레이어, 저장기능

 

   

브로드캐스트 리시버(BroadcastReceiver)

여러분의 애플리케이션이 전화가 오거나 문자메시지 수신과 같은 이벤트 반응시 적절하게 반응하기를 원한다면 반드시 브로드캐스트 리시버로서 등록되어 있어야만 합니다. 신호만 대기할 뿐 UI를 따로 가지지는 않으므로 신호가 오면 적절한 액티비티를 띄워 내용을 전달합해야 합니다.

   

 

컨텐트 프로바이더 (Content Provider)

다른 응용 프로그램을 위해 자신의 데이터를 제공합니다.

안드로이드는 보안이 엄격하여 다른 응용프로그램의 데이터를 함부로 액세스 하지 못하도록 되어 있습니다. 응용프로그램 간에 데이터를 공유할 수 있는 합법적인 유일한 장치가 바로 콘텐트 프로바이더입니다.

   

   

기타 사용 가능한 구성 요소 

(1) 데이터 보관

(2) 네트워크

(3) 멀티미디어

(4) GPS

(5) 전화서비스