[Android 앱개발 입문] 프로젝트 구조 - 앱 구성 파일 분석, 매니페스트 파일 (# 추가하기)
0. 앱 구성 파일 분석
* gradle 빌드 설정 파일
gradle : 안드로이드 앱의 빌드 도구. (빌드를 하기 위한 설정 파일이다!)
- gradle의 설정 파일이 build.gradle
- 프로젝트 단위(수준)의 build.gradle (Project:AndroidLab) -> 앱 전체에 대해서!
- 모듈 단위(수준)의 build.gradle (Module:AndroidLap.app)
- AndroidManifest.xml : 앱의 메인 환경 파일
- MainActivity.kt : 메인 액티비티 파일. (실제 소스코드 파일)
- res : 리소스 폴더
- activity_main.xml : 레이아웃 xml 파일
1. 매니페스트 파일
1) 매니페스트 파일
: 앱의 기본 특징을 설명, 앱의 구성요소인 컴포넌트(ex. 액티비티, 서비스 등)을 정의한 xml 파일
(앱 아이콘, 앱 이름, 액티비티 컴포넌트 이름 등등)
2) <manifest> 태그의 package 속성
: 이 앱의 고유한 식별자 역할을 하는 패키지 이름이 정의됨
3) <application> 태그
: 이 앱을 구성하고 있는 컴포넌트를 해당 태그의 하위에 정의
- 액티비티 : <activity> 요소
- 서비스 : <service> 요소
- 브로드캐스트 수신기 : <receiver> 요소
- 콘텐츠 제공자 : <provider> 요소
4) <activity> 태그
: name 속성이 Activity 서브 클래스의 완전히 정규화된 클래스 이름을 나타냄 (android)
// 예시에서는 이름이 Main Activity인 Activity 서브 클래스가 앱을 구성하는 유일한 컴포넌트
5) <intent-filter> 태그
: 안드로이드 컴포넌트 (ex. <activity> 태그) 하위에 포함되는 태그
해당 컴포넌트가 수신할 수 있는 intent를 걸러내는 역할 수행
- MainActivity인 액티비티 컴포넌트가 앱을 시작시키는 시작점으로서,
애플리케이션 런처(ex. 홈스크린)에 등록되어있음을 나타냄