[Android] 안드로이드 4대 컴포넌트

김상우·2021년 10월 1일
0
post-custom-banner

출처 : 안드로이드 공식문서 https://developer.android.com/docs?hl=ko ,
https://juyoung-1008.tistory.com/34

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

Activity / Service / Broad Cast / Content Provider

Activity (액티비티)

  • 화면의 UI 화면을 담당하는 컴포넌트

  • 안드로이드 앱은 반드시 하나의 액티비티를 가져야한다.

  • 각 액티비티는 메니페스트 파일에 등록 되어야한다.

  • 액티비티는 하나 이상의 view를 가질 수 있다.

옛날에 만들었던 프로젝트 파일 구조.
MainActivity.java + activity_main (view) 가 짝을 이루고있다.

Service (서비스)

  • 백그라운드에서 실행되는 컴포넌트
  • UI를 가지고 있지 않음
  • 한번 시작된 서비스는 앱이 종료되도 백그라운드에서 실행된다.
  • 네트워크를 통해 데이터를 받아올 수도 있다.
    출처 : https://bitsoul.tistory.com/147

-> 서비스를 이용한 프로그래밍. [extends Service]

Broadcast Receiver (방송 수신자)

  • 안드로이드 단말기에서 발생하는 다양한 이벤트 정보를 받고 반응
  • 단말기에서 발생하는 일 중에서 앱이 알아야 하는 상황이 발생하면 방송을 해준다.

-> [extends BroadcastReceiver]

Content Provider (컨텐트 제공자)

  • 데이터를 관리하고, 다른 앱의 데이터를 제공한다.
  • 데이터는 파일 시스템이나 SQLite 데이터베이스, 웹 상에 저장 가능
  • Content Provider를 통해서 다른 앱의 데이터를 쿼리하거나 변경 가능

Intent (인텐트)

  • 컴포넌트 간에 작업 수행을 위한 정보를 전달하는 역할
  • 예를들어, 액티비티 간에 화면 전환을 할 때 많이 사용됨

-> 버튼을 클릭하면 LabActivity 로 넘어가는 함수 onClick()


Fragment (프래그먼트)

  • 4대 컴포넌트는 아니지만 매우 자주 활용되고, 중요함
  • 최근 앱 트렌드인 네비게이션 바를 구현하는데 핵심 요소
  • 하나의 액티비티가 여러 개의 화면을 가지도록 하기위해 고안된 개념

학교 플젝에서 구현했던 네비게이션 바.
Fragment를 활용하고있다.

profile
안녕하세요, iOS 와 알고리즘에 대한 글을 씁니다.
post-custom-banner

0개의 댓글