티스토리 뷰
App Component
• 앱 컴포넌트는 Android 앱의 필수적인 기본 구성 요소를 뜻함.
• 각 컴포넌트는 시스템이나 사용자가 앱으로 들어갈 수 있는 진입점.
• 앱 컴포넌트에는 Activities, Services, Broadcast Receivers, Content Providers가 있다.
1. Activities(액티비티)
• 사용자와 상호작용하기 위한 진입점.
• 사용자 인터페이스를 포함한 화면 하나를 나타냄.
• 한 앱에는 여러 액티비티가 존재할 수 있음.
ex) 이메일 앱 -> 받은 이메일 목록, 메일 쓰기, 메일 읽기
• 액티비티는 서로 독립적임.
-> 한 액티비티 안에서 다른 액티비티를 만들고 이런 것이 아닌, 독립적인 액티비티를 서로 호출하는 방식
2. Services(서비스)
• 앱을 백그라운드에서 계속 실행하기 위한 진입점.
• 오랫동안 실행되는 작업이나 원격 프로세스를 위한 작업 등을 수행하기 위해 백그라운드에서 실행되는 컴포넌트.
ex) 음악 재생, 네트워크를 통해 데이터 가져오기 등
3. Broadcast Receivers(방송 수신자)
• Android 시스템이나 다른 앱이 전달한 브로드캐스트를 수신하여 이에 대한 동작을 할 수 있음.
• Android 시스템이 전달하는 브로드캐스트
- 시스템 이벤트 발생 시 브로드캐스트 보냄.
- 대다수의 브로드캐스트는 시스템이 보낸다.
ex) 배터리 부족, 충전 시작, 비행기 모드 시작, 화면 꺼짐, 사진 캡쳐 등
• 다른 앱이 전달하는 브로드캐스트
- 해당 앱에 대한 이벤트 발생 시 브로드캐스트 보냄.
ex) 데이터 다운로드 완료 등
• 특정 유형의 브로드캐스트를 수신했을 때 어떠한 동작을 해라 등의 기능을 만들 수 있음.
• 방송 수신자 역시 진입점이기 때문에 실행 중이지 않은 상태에서도 브로드캐스트를 받을 수 있음.
4. Content Providers(콘텐츠 제공자)
• 자신의 데이터를 다른 앱 접근할 수 있도록 하는 유일한 방법.
• 데이터에 대한 액세스 권한을 관리, 다른 앱과 데이터를 공유할 방법을 제공.
• 한 프로세스의 데이터에 다른 프로세스에서 실행 중인 코드를 연결하는 표준 인터페이스
ex) 메신저에서 갤러리의 사진들을 볼 수 있다.
'📱 Android > 💡 개념' 카테고리의 다른 글
[Android/개념] 7. Intent(인텐트) (0) | 2022.10.31 |
---|---|
[Android/개념] 6. Context(컨텍스트) (0) | 2022.10.28 |
[Android/개념] 4. 뷰 컨트롤(View Control) (0) | 2022.10.24 |
[Android/개념] 3. Activity(액티비티) (0) | 2022.10.21 |
[Android/개념] 2. Log(로그) (0) | 2022.10.21 |