#4 안드로이드 프로젝트 파일 디렉터리 구조

2019. 4. 14. 23:26Develop/Android

저번 강좌까지 진행했다면 코드는 한 줄도 편집한 적이 없을 것이다.

 

코딩에 들어가기 전 프로젝트 파일 구조에 대해 설명하려고 한다.

 

우선 프로젝트 디렉터리 구조를 보면 이런 형식이다.

 

Project
├─ .gradle
├─ .idea
├─ app
│   ├─ build
│   ├─ lib
│   └─ src
│       ├─ androidTest
│       └─ main
│           ├─ AndroidManifest.xml
│           ├─ asset
│           ├─ java
│           └─ res
│               ├─ anim
│               ├─ animator
│               ├─ color
│               ├─ drawable
│               ├─ layout
│               ├─ menu
│               ├─ mipmap
│               ├─ raw
│               ├─ values
│               └─ xml
│
├─ build
├─ gradle
├─ build.gradle
└─ setting.gradle

 

Project 디렉터리 내부

 

.idea

IntelliJ IDEA의 설정 디렉터리

app

애플리케이션 모듈 디렉터리와 파일이 포함된 디렉터리

build

모든 프로젝트 모듈에 대한 빌드 출력을 저장하는 디렉터리

gradle

gradle-wrapper 파일들을 포함하는 디렉터리

build.gradle

응용 프로그램 모듈에서 사용하는 기본 빌드 설정 파일

setting.gradle

빌드할 하위 프로젝트 지정

 

app/ 디렉터리 내부

 

app/build/

빌드 시에 생성된 파일 및 디렉터리 포함

app/lib/

private 라이브러리 포함

app/src/

모든 소스 코드, 리소스 파일들 포함

 

app/src/ 디렉터리 내부

 

app/src/androidTest

JUnit 테스트 프레임워크를 확장한 소스코드, 리소스

app/src/main/AndroidManifest.xml

애플리케이션의 activity, service, intent receiver, content provider, permission, API level, lib. 를 정의

app/src/main/asset

있는 그대로 컴파일되어야 하는 파일을 포함하는 디렉터리

app/src/main/java

Activity 자바 소스 파일

app/src/main/res

애플리케이션 리소스 파일

 

app/src/main/res 디렉터리 내부

 

app/src/main/res/anim

tween 애니메이션을 정의하는 XML 파일 디렉터리

app/src/main/res/animator

속성 애니메이션을 정의하는 XML 파일 디렉터리

app/src/main/res/color

색상의 상태 목록을 정의하는 XML 파일 디렉터리

app/src/main/res/drawable

drawable 리소스 하위 유형으로 컴파일되는 비트맵 파일 또는 XML 파일 디렉터리

app/src/main/res/layout

UI 레이아웃을 정의하는 XML 파일 디렉터리

app/src/main/res/menu

옵션 메뉴, 컨택스트 메뉴 또는 하위 메뉴 등과 같은 애플리케이션의 메뉴를 정의하는 XML 파일 디렉터리

app/src/main/res/mipmap

런처 아이콘 밀도에 대한 drawable 파일 디렉터리

app/src/main/res/raw

원시 형태로 저장하기 위한 임의의 파일 디렉터리

(원본 파일 이름과 파일 계층에 액세스해야 하는 경우 res/raw/ 대신 assets/ 디렉터리에 저장)

app/src/main/res/values

리소스 배열, 색상 값, 치수 값, 문자열 값, 스타일 등의 단순 값이 들어있는 XML 파일 디렉터리

app/src/main/res/xml

런타임에 읽을 수 있는 임의의 XML 파일 디렉터리

 

 

프로젝트를 만들고 개발하는 동안 리소스 관리도 중요하다.

개발을 하다 보면 자동으로 외워지는 부분이니 우선 정독하여 두면 좋을 것이다.