해보자

[ANDROID] 컴포넌트와 인텐트 본문

ANDROID

[ANDROID] 컴포넌트와 인텐트

안댕 2019. 6. 27. 21:41

① 컴포넌트 

컴포넌트란 앱의 구성단위로, 여러개의 컴포넌트를 조합해 하나의 앱을 만든다. 컴포넌트의 물리적인 모습은 클래스이지만 모든 클래스가 컴포넌트는 아니다. 안드로이드에서 클래스는 컴포넌트와 일반 클래스로 나뉘는데, 이 둘의 차이는 클래스의 생명주기를 누가 관리하는지에 달려있다.

 

 1) 일반클래스 : 생명주기를 개발자 코드로 관리. 즉 필요한 순간에 new 연산자로 생성해 이용하고, 필요없을 때는 null을 넣어 소멸시킨다.

 2) 컴포넌트 : 컴포넌트는 똑같은 클래스라도 생명주기를 개발자 코드가 아닌 안드로이드 시스템이 생성하여 관리, 소멸시킨다.

 

 

② 안드로이드를 구성하는 4대 컴포넌트

 액티비티(Activity)

 - 사용자 인터페이스(UI)가 있는 단일 화면을 나타냄.

 - 여러 액티비티가 함께 작동하여 짜임새 있는 환경을 형성하지만 각자 서로와 독립적인 형태로 존재.

 서비스(Service)

 - 사용자 인터페이스(UI)가 없는, 백그라운드에서 실행되는 프로세스를 의미.

 - 만약 Service가 실행되고 있는 상태라면 안드로이드 OS에서는 해당 프로세스를 죽이지 않도록 방지하고 관리.

 브로드캐스트 수신기

(Broadcast Receiver)

 - 브로드캐스트 수신기는 시스템 범위의 브로드캐스트 알림에 응답하는 구성 요소.

 - 대다수의 브로드캐스트는 시스템에서 시작.

 콘텐트 제공자

(Content Provider)

 - 공유된 앱 데이터 집합을 관리.

 - 데이터는 파일 시스템이나 데이터베이스 또는 우베이나 기타 영구적인 저장소위치 중 앱이 액세스할 수 있는 곳이라면 어디든 저장 가능.

 

 

③ 인텐트

서로 독립적으로 동작하는 4가지 컴포넌트들 간의 상호 통신을 위한 장치.

통신수단으로 인텐트를 통해 다른 애플리케이션의 컴포넌트를 활성화 시킬 수 있다.

 

 

 

 

[출처]

① [Android] 안드로이드 컴포넌트의 개념, 구조적인 측면.

https://blog.naver.com/sotry16/221554965575 

 

② <안드로이드> Android 4대 컴포넌트

https://blog.naver.com/hwangws0906?Redirect=Log&logNo=221561307289