[안드로이드] 인텐트 필터

반응형



안드로이드 매니페스트 파일에 이은, 인텐트 필터 에 관한 내용입니다.
[안드로이드] - [안드로이드] 안드로이드 매니페스트 파일

읽기전에 손가락 한번 클릭~ >_<

고마워요 ~ Chu ~ ♥



안드로이드의 인텐트 객체는 대상이 되는 컴포넌트를 명시적으로 지정할 수 있습니다.
이렇게 되면, 매니페스트 파일에 기초하여 그 컴포넌트를 찾아내어 그것을 활성화 하죠.
하지만, 그 대상이 명시적으로 지정되지 않으면 인텐트를 처리할 수 있는 최선의 컴포넌트를 찾아야 하는데요.. 이것은 해당 인텐트 객체와 그 인텐트의 대상이 될 수 있는 컴포넌트들의 인텐트 필터를 비교함으로써 이루어 집니다.

컴포넌트의 인텐트 필터는 해당 컴포넌트가 처리할 수 있는 인텐트의 종류를 알려주는 역할입니다.
인텐트 필터 또한 매니페스트 파일 내에 선언됩니다.

< 매니페스트 파일의 한 부분 >

이 인텐트 필터는 " android.intent.action.MAIN " 액션과
" android.intent.category.LAUNCHER " 카테고리로 구성된 필터입니다.

이것은 모바일 기기에서 사용자가 실행할 수 있는 어플리케이션을 스크린에 보여주는
어플리케이션 런처( Launcher ) 에 그 액티비티가 표시되게 한다는 것을 뜻합니다.
곧 그 액티비티가 어플리케이션의 시작점이고 사용자가 런처에서 어플리케이션을 실행했을때 처음 보게될 액티비티라는 것을 의미합니다.



이 인텐트 필터는 특정 타입의 데이터에 대해 액티비티가 수행할 수 있는 액션을 선언합니다.




컴포넌트는 인텐트 필터를 얼마든지 가질 수가 있습니다.
각각의 필터는 각기 다른 능력 ( capability ) 을 선언할 수 있지요.

만일, 컴포넌트가 필터를 가지지 않는다면 , 인텐트 대상의 컴포넌트를 명시적으로 지정한 인텐트에 의해서만 활성화 될 수 있습니다.

코드 내에서 생성되어 등록된 브로드캐스트 리시버에 인텐트 필터는 IntentFilter 객체에 의해 직접 인스턴스화 됩니다. 나머지 모든 필터들은 매니페스트 내에서 설정됩니다.


관련글



반응형

댓글

작가 남시언님의
글이 좋았다면 응원을 보내주세요!

Designed by JB FACTORY