반응형

 

안드로이드 - 4대 컴포넌트(component)의 특징 및 실행방법

 

 

   목차

  1. 안드로이드 4대 컴포넌트
  2. 컴포넌트의 특징 및 실행방법

 

 

1. 안드로이드 4대 컴포넌트 

 

컴포넌트(component)란 앱을 구성하는 단위로 안드로이드에서는 그 역할에 따라 크게 4가지 종류가 있습니다.

안드로이드의 컴포넌트 종류로는 액티비티, 컨텐츠 프로바이더, 브로드캐스트 리시버, 서비스가 있으며 이를 안드로이드 4대 컴포넌트라고 합니다. 개발자는 필요에 따라 4가지 종류의 컴포넌트 중 한개 또는 다수를 작성하여 앱을 개발하게 됩니다. 

 

 

1) 액티비티(Activity)

앱의 화면을 구성하는 컴포넌트로, 일반적으로 앱을 만들경우 액티비티를 만드는것 부터 시작하며 보통 하나 이상의 액티비티를 만들어 구성하게 됩니다. 

 

2) 컨텐츠 프로바이더(Content Provider)

앱에서 사용되는 데이터를 다른 앱과 공유하기 위한 컴포넌트로, 앱에서 사용되고 있는 데이터를 다른 앱과 공유하기 위해서는 컨텐츠 프로바이더를 통해서 원하는 만큼만 제한적으로 공유할 수 있습니다.

 

3) 브로드캐스트 리시버 (Broadcast Receiver)

안드로이드 시스템에서는 특정 이벤트가 발생했을 경우 이것을 알려주는 브로드캐스트(Boradcast)를 전송합니다. 또한 앱에서도 특정한 목적의 브로드캐스트를 전송할 수 있습니다. 브로드캐스트 리시버는 이러한 브로드캐스트를 수신받아 상황에 맞게 처리할 수 있도록 하는 컴포넌트를 말합니다. 

 

4) 서비스(Service)

화면없이 백그라운드에서 오래 실행해야 하는 작업을 위한 컴포넌트로, 서비스는 화면구성을 할 수 없으며 사용자 화면이 꺼져있을 경우에도 지속적인 작업 수행이 필요할 경우 사용됩니다. 

 

 

 

2. 컴포넌트의 특징 및 실행방법

 

안드로이드에서 컴포넌트는 클래스로 구성되어 있습니다. 예를들어 가장 흔히 사용되는 액티비티의 경우 아래와 같이 AppCompatActivity 클래스를 상속받아 만들어집니다. 

 

public class MainActivity extends AppCompatActivity { 
	...
}

 

하지만 컴포넌트 클래스는 다른 일반 클래스와 달리 하나의 독립적인 실행 단위로 manifest파일(AndroidManifest.xml)에 등록되어 있어야 하며, 안드로이드 시스템에서 객체 생성과 관리를 담당하게 됩니다. 

 

따라서 일반 클래스처럼 new 연산자를 통한 객체 생성을 할 수 없으며, 해당 컴포넌트를 실행하기 위해서는 인텐트(Intent)를 통해 시스템에 요청하여 실행해야 합니다. 이를 통해서 각 컴포넌트들은 인텐트를 통해 서로 데이터를 주고 받으며 상호 작용할 수 있습니다. 

 

 

ex) 인텐트(Intent)를 통한 TestActivity 실행 요청

 

Intent intent = new Intent(this, TestActivity.class);
startActivity(intent);

 

반응형

+ Recent posts