구성요소 설명
Activity
액티비티
사용자 인터페이스 화면을 구성하는 컴포넌트
Service
서비스
백그라운드에서 실행되는 컴포넌트
시각적인 사용자 인터페이스를 가지지 않음
Intent
인텐트

컴포넌트에 액션, 데이터 등을 전달하는 메시지 컴포넌트
(음,,,,,,
인텐트는
액티비티가 하나가 있고, 두개가 있고, 세개가 있어여,
그리고 서비스가 있고, 리시버가 있고, 프로바이더 등 여러가지 구성요소가 있다고 하면!!!
데이터를 뭔가 전달을 해줄 필요가 있을 때!!!
그 데이터를 전달해주는 역할을 담당하는게
인텐트이다!!!
메시지 같은거???!!??
그 인텐트 안에는 데이터도 넣을 수 있고,
어떤 행동을 취하라는 액션을 지정할 수도 있고,
어떤 특정 값을 지정하는 flag같은것도 넣을 수가 있다!!)

Intent Filter
인텐트 필터
수신할 수 있는 인텐트를 정의하여 컴포넌트를 정의하는 역할을하는 컴포넌트
Broadcast Receiver
브로드캐스트 리시버

배터리 부족, 언어 설정 변경 등의 특정 브로드캐스트를 수신하거나 반응하는 컴포넌트.


시각적인 사용자 인터페이스를 가지지 않음.
(음......
뜻은 "방송하다"고  "뭔가 알려주다"
알려주는걸 Receiver 받겠다라는 의미이다...
누가 뭔가 통제해주면
내가 받을께
이런 역할을 하는게 
브로드캐스트 리시버!!!!!이다.

뭔가 알려주는 역할을 하는 건 누구냐면 안드로이드가 알려주는 거다,
안드로이드가 배터리가 얼마 없으니깐
'그거 알려줄께' 이런걸 할 수 있는거다.

이런걸 누구한테나 다 알려주면 필요가 없잖아요....
받고자 하는 사람에게만 알려주면 되는 거잖아요.
받고자 한다며는 이런 '브로드캐스트 리시버'를 만들어 주면 되는 거다.

만들고 나서, 나는 배터리 사용을 받고 싶어 지정만 하시면 됩니다.  -> 이게 [인텐트 필터] 이다.
나는 이런이런 인텐트를 받을 거야라는 것을 지정을 하는게 바로 [브로드캐스트 리시버의 필터]라는 기능 이다.
그래서 여기다가 '배터리 사용량 받겠습니다'라고 지정을 하며는 안드로이드가 거기 지정된 앱만 찾아서 알려주게 된다.
알려 주면,
브로드캐스트 리시버라는 깨어나서  그걸 받아서 처리를 하게 됩니다.

어떤 처리를 하는 지는 개발자가 코드 작업을 하시면 됩니다.



 

Content Provider
콘텐트 프로바이더

애플리케이션 간의 데이터 공유를 위해 표준화된 인터페이스를 제공하는 컴포넌트.

'콘텐트 프로바이더'가 뭐냐면,
앱들이 여러개가 있잖아요!
본인 회사에서 만든 앱이 2,3개가 있는데,
내부적으로 데이터를 공유를 하고 싶어요..
그럴때 사용하는게 [콘텐트 프로바이더]입니다.!!!!!!!!!

내 앱에서는 이러한 데이터를 가져갈 수 있게 해줄 께,
이러한 메소드를 만들어 놓고 ,
그러면 다른 앱에서 그 메소드를 호출해서 데이터를 가져 올 수 있게 된다!!

이럴때 사용하는게 '콘텐트 프로바이더'이다.

Notification
노티피케이션
사용자에게 특정 이벤트를 알리는 컴포넌트.

통지를 하는거.
sms가 오면 상단바에 sms 왔다고 아이콘 뜨잖아요!
그런게 통지라고 보면 된다.

팝업창 뜨는 거 이런 것도 통지라고 보면된다.
Fragment
프래그먼트
액티비티 내에세 독자적으로 동작할 수 있는 UI컴포넌트.

액티비티 = 전체화면 이다.
근데 액티비티는 전체화면이다 보니깐,
화면을 반을 잘라서 사용하고 싶을 때,
쓸 수 있는 방식이 없어요....
그냥 각각의 뷰를 넣어서 뭔가 동작을 해야되는 것이다.액티비티 내에서.....

근데 액티비티 내에서 아주 독립적으로 나누어서 뭔가 다른처리를 하고 싶을 때 사용하는게 프래그먼트이다.

예) 테블릿같은 경우, 왼쪽에 목차 넣고 오른쪽에 콘텐트 보여주고 할 때, 
왼쪽에 프래그먼트, 오른쪽에 프래그먼트,
이렇게 두개의 프래그먼트를 가진 액티비티 하나를 구성하게 된다.

간단하게 설명하면,
액티비티 내에서 동작하는 아주 작은 액티비티이다!!