[AndroidStudio] 주요 컴포넌트, 스레드
4대 주요 컴포넌트
- 액티비티
- 서비스
- 브로드캐스트 리시버
- 콘텐트 프로바이더
액티비티
- 화면 구성을 위한 기본적인 컴포넌트
- 액티비티 = 화면
서비스
- 백그라운드에서 동작하는 컴포넌트
- 눈에 보이는 화면과 차이 존재
- 서비스 생성 ➡️ 서비스 시작 ➡️ 서비스 종료
브로드캐스트 리시버
- 응용 프로그램이나 장치에 메시지 전달되는 방송 메시지 수신
- 문자 메시지 도착, 배터리 방전, 네트워크 환경 변화 등
콘텐트 프로바이더
- 응용 프로그램 간 데이터 공유를 위한 컴포넌트
- 응용 프로그램은 기본적으로 자기만 접근 가능
- 데이터 공개를 위해 콘텐트 프로바이더 사용
-URI: Uniform Resource Identifier (통합 자원 식별자)
-콘텐트 프로바이더에서 처리된 데이터는 DB 또는 파일로 저장
액티비티 생명주기
- 액티비티의 생성부터 소멸까지 주기
- 안드로이드 응용프로그램은 화면이 작아 동시에 여러 개의 액티비티가 나올 수 없다
- 앞에 나오는 화면만 활성화 ➡️ 나머지는 모두 비활성화된 상태로 남는다

스레드(Thread)
- 동시에 여러 작업을 수행하기 위해 사용되는 개념
- 멀티스레드, 경량 프로세스
- 스레드가 프로세스 안에서 동작하는 작은 단위
- 함수: 하나의 작업 종료 ➡️ 다음 작업 진행
- 스레드: 여러 작업 동시 진행
UI 스레드
- 화면의 위젯을 변경할 때 사용
- 일반적인 스레드는 스레드 안에서 필요한 내용을 계산하는 것만 가능하고 화면의 다른 위젯을 변경할 수 없다