디렉토리 구조
파일, 폴더 | 설명 |
asets 폴더 | 리소스 폴더이다. 최초는 비어 있는데, 이 안에 비디오, 오디오 등의 파일을 저장한다. |
bin 폴더 | 컴파일된 결과 파일이 저장된다. |
gen/R.java | 프로젝트 내의 각종 개체에 접근할 수 있는 ID를 정의한다. 툴이 자동으로 관리하므로 직접 편집해서는 안된다. |
res | 문자열, 이미지 등 애플레케이션에서 사용할 리소스 파일 |
src | 애플리케이션 소스코드 |
AndroidManifest.xml | 프로젝트의 버전이나 이름, 구성 등에 대한 정보를 가진다. |
default.properties | 프로젝트의 빌드 타겟이 명시되어 있다. |
proguard.cgf | 프로젝트의 빌드 타겟이 명시되어 있다. |
.classpath | 소스 파일의 위치, 출력 폴더, 공통 라이브러리 위치 등에 대한 정보가 기록되어 있다. |
.project | 빌드 순서와 방법 등이 명시되어 있다. 리소스, 프리 컴파일, 자바 컴파일, APK 생성 순으로 빌드됨을 알 수 있다. |
리소스 디렉토리
리소스 디렉토리는 이미지를 넣는 drawable 디렉토리와
레이아웃 XML 파일을 넣는 layout디렉토리 등으로 이루어져 있다.
기본 프로젝트에 자동으로 생성되지 않은 raw, xml 디렉토리 등은 직접 생성하면 된다.
어떤 모드에서라도 동일하게 보여지고 싶다면 res/layout/ 디렉토리에 작성해야 하며,
모드별로 각각 다르게 보여주고 싶다면, res/layout-port/, res/layout-land/에 작성한다.
리소스 | 설명 |
res/drawable-hdpi | hdpi에서 보여질 이미지 |
res/drawable-ldpi | ldpi에서 보여질 이미지 |
res/drawable-mdpi | mdpi에서 보여질 이미지 |
res/drawable-xhdpi | xhdpi에서 보여질 이미지 |
res/drawable-nodpi | 밀도(density)에 상관없이 보여질 이미지 |
res/layout/ | 사용자 인터페이스 레이아웃을 정의하는 XML 파일 |
res/layout-port/ | 사용자 인터페이스 레이아웃을 정의하는 XML 파일(세로 모드) |
res/layout-land/ | 사용자 인터페이스 레이아웃을 정의하는 XML 파일(가로 모드) |
res/menu/ | 메뉴를 정의하는 XML 파일 |
res/values/ | 문자열 등의 각종 값을 정의하는 파일 |
res/xml/ | XML 형태로 저장된 다양한 파일 |
res/raw/ | 기타 파일(mp3, mp4 등) |
자세한 부분은
http://developer.android.com/guide/practices/ui_guidelines/index.html
여기서 참조한다.
매니페스트 구조
<uses-permission /> | 애플리케이션이 필요로 하는 권한 |
<permission /> | 외부 액티비티나 서비스가 필요로 하는 권한 |
<instrumentation /> | 액티비티가 실행되는 등의 주요 이벤트가 발생했을 때, 애플리케이션의 어떤 부분을 호출할지를 지정(기록, 모니터링 등) |
<uses-library /> | 추가로 필요로 하는 라이브러리 지정(구글 맵스) |
<uses-sdk /> | 애플리케이션이 필요로 하는 안드로이드 버전 |
<application /> | 애플리케이션과 관련된 정보 |
'Tech Interview > Android' 카테고리의 다른 글
[Android] 안드로이드 생명주기(Life cycle)에 대해 설명하시오. (0) | 2018.11.22 |
---|---|
[Android] 액티비티(activity) 생명주기에 대해서 설명하시오. (0) | 2018.11.22 |
[Android] 안드로이드의 4대 컴포넌트(component)에 대해서 설명하시오. (0) | 2018.11.22 |
[Android] 안드로이드에서 다국어 지원을 위해 해야할 작업에 대해서 설명하시오. (0) | 2018.11.22 |
[Android] 안드로이드의 실행환경에 대해서 설명하시오. (0) | 2018.11.22 |