2011년 3월 4일 금요일

Intent 구성요소

Component Name - Intent를 전달 받을 컴포넌트 명
Action - 동작
Category - 대상의 종류
Data - 데이터 위치와 타입을 결정
Extra - 기타 정보
Flag - System에 의한 Activity launch 방법과 launch후 Activity를 다루는 방법



Intent Filter [:AndroidManifest.xml 에 설정 ]

- Component의 처리 능력, 즉 Component가 수신하고자 하는 Intent의 집합을 기술

- Activity, Service, Broadcast Receiver가 자신들이 처리할 수 있는 Implicit Intent의 종류를 System에 알려주기 위해 하나 이상의 IntentFilter를 가질 수 있음(Explicit Intent는 항상 Target에 전달됨)

- Component 실행 전에 그 기능을 알아햐 하므로 AndroidManifest.xml을 통해 정의됨
cf> BroadcastReceiver의 경우 Context.registerReceiver()를 통해 동적으로 Filter 등록 가능

- Implicit Intent는 Action, Data, Category 세 개의 영역에 대하여 Test퇴고 이를 모두 통과해야 Component에 전달됨.

- 만약 intent가 하나 이상의 Activity 또는 Service의 Filter를 통과할 수 있다면, 사용자들에게 어떤 Component가 활성화 되어야하는 지 묻게 되고, 만약 어떠한 Target도 발견되지 않으면 예외발생.

댓글 없음:

댓글 쓰기