반응형
<application> 및 <activity> 태그의 속성과 하위 요소, 적용 가능 API, 필수여부 등을 정리해 보았다.
<application> 태그 속성
앱의 전체적인 설정을 제어하며, 여러 속성 및 하위 요소를 통해 앱의 동작, 권한, 리소스 등을 정의할 수 있다.
속성 | 적용 가능 API 버전 (Android 버전) |
필수 여부 | 설명 |
android:icon | API 1 (Android 1.0) | 필수 | 앱의 기본 아이콘을 설정합니다. |
android:label | API 1 (Android 1.0) | 선택 | 앱의 기본 이름(라벨)을 설정합니다. |
android:theme | API 1 (Android 1.0) | 선택 | 애플리케이션의 기본 테마를 설정합니다. |
android:permission | API 1 (Android 1.0) | 선택 | 앱에서 선언된 모든 컴포넌트에 적용되는 권한을 정의합니다. |
android:debuggable | API 1 (Android 1.0) | 선택 | 디버깅 모드를 활성화할지 여부를 지정합니다. |
android:enabled | API 1 (Android 1.0) | 선택 | 애플리케이션이 활성화 상태인지 여부를 지정합니다. |
android:hasCode | API 1 (Android 1.0) | 선택 | 애플리케이션이 자체적으로 컴파일된 코드(DEX 파일)를 포함하는지 여부를 지정합니다. |
android:persistent | API 1 (Android 1.0) | 선택 | 시스템 메모리에서 앱이 항상 실행 중인지 여부를 정의합니다. |
android:taskAffinity | API 1 (Android 1.0) | 선택 | 애플리케이션의 태스크 친화도를 정의합니다. |
android:process | API 1 (Android 1.0) | 선택 | 앱이 실행될 프로세스를 지정합니다. |
android:allowTaskReparenting | API 1 (Android 1.0) | 선택 | 태스크 변경 시 액티비티가 재배치될 수 있는지 여부를 지정합니다. |
android:killAfterRestore | API 1 (Android 1.0) | 선택 | 백업 후 애플리케이션을 종료할지 여부를 설정합니다. |
android:restoreAnyVersion | API 1 (Android 1.0) | 선택 | 앱이 다른 버전의 백업 데이터를 복원할 수 있는지 여부를 설정합니다. |
android:resizeableActivity | API 1 (Android 1.0) | 선택 | 애플리케이션의 액티비티가 크기 조정 가능한지 여부를 지정합니다. |
android:usesCleartextTraffic | API 1 (Android 1.0) | 선택 | 앱에서 암호화되지 않은 트래픽을 허용할지 여부를 정의합니다. |
android:installLocation | API 8 (Android 2.2) | 선택 | 앱이 설치될 위치를 지정합니다. (auto, internalOnly, preferExternal) |
android:backupAgent | API 8 (Android 2.2) | 선택 | 백업 및 복원을 담당하는 백업 에이전트를 정의합니다. |
android:allowBackup | API 8 (Android 2.2) | 선택 | 앱 데이터의 백업을 허용할지 여부를 정의합니다. |
android:hardwareAccelerated | API 11 (Android 3.0) | 선택 | 애플리케이션에서 하드웨어 가속을 사용할지 여부를 설정합니다. |
android:largeHeap | API 11 (Android 3.0) | 선택 | 애플리케이션이 더 큰 힙 메모리를 사용할 수 있는지 여부를 지정합니다. |
android:vmSafeMode | API 11 (Android 3.0) | 선택 | 앱이 VM에서 안전 모드로 실행될지 여부를 지정합니다. |
android:isGame | API 19 (Android 4.4) | 선택 | 앱이 게임인지 여부를 정의합니다. |
android:banner | API 20 (Android 4.4W) | 선택 | Android TV에서 사용할 배너 이미지를 지정합니다. |
android:restrictedAccountType | API 22 (Android 5.1) | 선택 | 제한된 계정의 유형을 설정합니다. |
android:fullBackupContent | API 23 (Android 6.0) | 선택 | 백업 내용과 제외 항목을 정의하는 XML 파일을 지정합니다. |
android:roundIcon | API 25 (Android 7.1) | 선택 | 원형 아이콘을 지정합니다. |
android:category | API 26 (Android 8.0) | 선택 | 애플리케이션의 카테고리를 정의합니다. (game, productivity, social 등) |
android:appComponentFactory | API 28 (Android 9.0) | 선택 | 애플리케이션의 컴포넌트 생성을 처리하는 클래스를 지정합니다. |
android:profileable | API 29 (Android 10.0) | 선택 | 애플리케이션이 성능 프로파일링이 가능한지 여부를 정의합니다. |
android:dataExtractionRules | API 31 (Android 12.0) | 선택 | 앱의 데이터 추출 규칙을 정의하는 XML 파일 경로를 지정합니다. |
<application> 태그 하위 요소
하위요소 | 적용 가능 API 버전 (Android 버전) |
필수 여부 | 설명 |
<activity> | API 1 (Android 1.0) | 필수 | 앱의 액티비티를 선언합니다. |
<service> | API 1 (Android 1.0) | 선택 | 백그라운드 작업을 수행하는 서비스 컴포넌트를 선언합니다. |
<receiver> | API 1 (Android 1.0) | 선택 | 브로드캐스트 수신기를 선언합니다. |
<provider> | API 1 (Android 1.0) | 선택 | 앱에서 데이터를 공유할 수 있는 콘텐츠 제공자를 선언합니다. |
<uses-library> | API 1 (Android 1.0) | 선택 | 앱에서 사용할 추가 라이브러리를 선언합니다. |
<meta-data> | API 1 (Android 1.0) | 선택 | 추가적인 메타데이터 정보를 설정합니다. |
<activity-alias> | API 1 (Android 1.0) | 선택 | 기존 액티비티의 별칭을 정의하여 다른 이름으로 사용할 수 있도록 합니다. |
<permission> | API 1 (Android 1.0) | 선택 | 앱에서 정의하는 권한을 선언합니다. |
<permission-group> | API 1 (Android 1.0) | 선택 | 권한을 그룹화하여 선언합니다. |
<permission-tree> | API 1 (Android 1.0) | 선택 | 권한의 계층 구조를 선언합니다. |
<uses-permission> | API 1 (Android 1.0) | 선택 | 앱이 필요로 하는 권한을 정의합니다. 특정 기능을 사용하려면 권한 요청이 필요할 때 추가합니다. |
<profileable> | API 29 (Android 10.0) | 선택 | 앱의 성능을 프로파일링할 수 있는지 여부를 정의합니다. |
<activity> 태그 속성
각 액티비티의 동작과 속성을 정의한다. 앱의 개별 화면을 구성하며, 앱의 주요 동작 방식을 정의할 수 있다.
속성 | 적용 가능 API 버전 (Android 버전) |
필수 여부 | 설명 |
android:name | API 1 (Android 1.0) | 필수 | 액티비티의 클래스 이름을 정의합니다. |
android:label | API 1 (Android 1.0) | 선택 | 액티비티의 이름을 정의합니다. |
android:theme | API 1 (Android 1.0) | 선택 | 액티비티에서 사용할 테마를 설정합니다. |
android:icon | API 1 (Android 1.0) | 선택 | 액티비티에 사용할 아이콘을 설정합니다. |
android:permission | API 1 (Android 1.0) | 선택 | 액티비티에 접근하기 위해 필요한 권한을 설정합니다. |
android:configChanges | API 1 (Android 1.0) | 선택 | 액티비티가 처리할 구성 변경 사항을 설정합니다. |
android:launchMode | API 1 (Android 1.0) | 선택 | 액티비티의 실행 모드를 지정합니다. |
android:taskAffinity | API 1 (Android 1.0) | 선택 | 태스크의 친화도를 지정합니다. |
android:windowSoftInputMode | API 3 (Android 1.5) | 선택 | 소프트 입력 모드의 동작을 설정합니다. (adjustResize, adjustPan 등) |
android:hardwareAccelerated | API 11 (Android 3.0) | 선택 | 하드웨어 가속을 사용할지 여부를 설정합니다. |
android:clearTaskOnLaunch | API 1 (Android 1.0) | 선택 | 태스크가 시작될 때 다른 액티비티를 모두 종료할지 여부를 설정합니다. |
android:alwaysRetainTaskState | API 1 (Android 1.0) | 선택 | 태스크의 상태를 항상 유지할지 여부를 설정합니다. |
android:autoRemoveFromRecents | API 21 (Android 5.0) | 선택 | 액티비티가 종료되면 최근 작업 목록에서 자동으로 제거될지 여부를 설정합니다. |
android:allowEmbedded | API 30 (Android 11.0) | 선택 | 액티비티가 다른 액티비티 내에 임베드될 수 있는지 여부를 설정합니다. |
android:exported | API 31 (Android 12.0) | 필수 | 외부에서 액티비티를 호출할 수 있는지 여부를 정의합니다. |
<activity> 태그 하위 요소
하위요소 | 적용 가능 API 버전 (Android 버전) |
필수 여부 | 설명 |
<intent-filter> | API 1 (Android 1.0) | 선택 | 액티비티가 처리할 수 있는 인텐트를 정의합니다. |
<meta-data> | API 1 (Android 1.0) | 선택 | 액티비티에 대한 추가 메타데이터를 제공하여 앱 실행 시 필요한 정보를 설정할 수 있습니다. |
<layout> | API 1 (Android 1.0) | 선택 | 액티비티가 사용할 레이아웃을 정의합니다. 보통 XML 파일로 참조됩니다. |
<intent-filter> 태그 하위 요소
하위요소 | 적용 가능 API 버전 (Android 버전) |
필수 여부 | 설명 |
<action> | API 1 (Android 1.0) | 필수 | 인텐트 필터에서 처리할 수 있는 인텐트 액션을 정의합니다. 예: android.intent.action.MAIN |
<category> | API 1 (Android 1.0) | 선택 | 인텐트 필터에서 처리할 수 있는 인텐트 카테고리를 정의합니다. 예: android.intent.category.LAUNCHER |
<data> | API 1 (Android 1.0) | 선택 | 인텐트 필터가 처리할 수 있는 데이터(URI, MIME 타입 등)를 정의합니다. |
반응형
'개발 > Android' 카테고리의 다른 글
알림 메시지(Notification Message)와 데이터 메시지(Data Message) (0) | 2024.10.25 |
---|---|
멀티라인 Toast 메시지 출력 (0) | 2024.10.24 |
NFC 권한설정 (1) | 2024.10.21 |
NdefFormatable 태그 (0) | 2024.10.21 |
NFC Tag 상세정보 출력 (2) | 2024.10.18 |