반응형
안드로이드의 category
는 인텐트 필터(Intent Filter)에서 사용되는 요소 중 하나로, 특정 인텐트가 어떤 맥락에서 사용될 수 있는지를 지정하는 데 사용됩니다. 이는 인텐트가 실행되기 위한 조건을 명확히 하여, 애플리케이션이 적절한 액티비티(Activity), 서비스(Service), 또는 브로드캐스트 리시버(Broadcast Receiver)를 선택할 수 있도록 돕습니다.
1. 주요 카테고리 종류
android.intent.category.DEFAULT
:- 일반적으로 명시적으로 지정된 카테고리가 없을 때 인텐트에 자동으로 포함됩니다.
- 특정 액티비티를 실행하기 위해 암시적 인텐트를 사용할 때, 이 카테고리를 명시하지 않으면 시스템이 적절한 액티비티를 찾지 못할 수 있습니다.
android.intent.category.LAUNCHER
:- 이 카테고리가 포함된 액티비티는 애플리케이션의 메인 런처 아이콘으로 등록됩니다.
- 이 카테고리는 Android 시스템이 홈 화면이나 앱 서랍에서 애플리케이션의 시작 액티비티로 표시할 수 있도록 합니다.
android.intent.category.BROWSABLE
:- 이 카테고리는 브라우저에서 웹 링크를 통해 애플리케이션을 시작할 수 있도록 합니다.
- 예를 들어, 브라우저에서 특정 URL을 클릭하면 이 카테고리를 포함한 인텐트가 해당 URL을 처리할 수 있는 액티비티를 시작하게 됩니다.
android.intent.category.HOME
:- 이 카테고리가 있는 액티비티는 홈 화면 역할을 할 수 있습니다.
- 사용자가 '홈' 버튼을 눌렀을 때, 이 카테고리가 있는 액티비티가 호출될 수 있습니다.
android.intent.category.ALTERNATIVE
:- 대안적 작업을 나타내는 인텐트에서 사용됩니다.
- 사용자 인터페이스에서 대체 동작(예: 다른 방법으로 파일을 여는 옵션)을 제공할 때 사용됩니다.
android.intent.category.SELECTED_ALTERNATIVE
:- 사용자가 선택한 대안적인 작업을 나타냅니다.
- 주로 사용자가 특정 대안적 작업을 선택할 수 있는 UI에서 활용됩니다.
android.intent.category.APP_BROWSER
,APP_CALENDAR
,APP_CONTACTS
,APP_EMAIL
,APP_MAPS
,APP_MUSIC
,APP_GALLERY
,APP_MESSAGING
등:- 특정 유형의 애플리케이션을 나타내는 데 사용됩니다.
- 예를 들어,
APP_BROWSER
는 웹 브라우저 애플리케이션을 나타내는 데 사용됩니다.
2. 예제
아래는 인텐트 필터에서 category
를 사용하는 예제입니다. 이 예제는 런처에서 시작할 수 있는 메인 액티비티를 정의합니다.
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
3. 요약
안드로이드의 category
는 인텐트 필터에서 특정 맥락이나 용도에 따라 인텐트를 분류하고, 적절한 컴포넌트를 선택할 수 있게 합니다. 이는 애플리케이션 간의 상호작용을 보다 명확하게 관리하고, 사용자에게 의도한 경험을 제공하는 데 중요한 역할을 합니다.
반응형
'android > Process' 카테고리의 다른 글
[ Android ] sdcard 폴더 내 앱 데이터를 다른 앱에 제공하기 (0) | 2024.09.04 |
---|---|
[ Android ] category 중 MONKEY에 대해서 알아보기 (0) | 2024.07.31 |
[ Android ] 코드 내에서 외부 명령어 실행하기 (0) | 2024.07.12 |