Project structure

똘이주인·2021년 8월 9일
0

Android view에서 보여지는 구조들은 실제 Directory 구조와 다릅니다. 개발편의를 위해서 필요한 폴더들만 보여주고 있다.

프로젝트의 모든 빌드 관련 구성 파일을 최상위 Gradle Script 그룹에 표시

Gradle Scripts : 그룹은 build와 관련된 파일들이 있습니다.

app : 그룹은 app의 source 등을 포함하고 있고, 하위에 다음과 같은 내용을 보여줍니다.

manifest : AndroidManifest.xml 파일을 포함합니다. App의 Spec을 보여준다고 생각하시면 됩니다.

java : Java source 및 Junit 파일들을 포함합니다.

res : 코드가 아닌 모든 Resource(Image, layout, String 등) 파일들을 포함합니다.

Project view

숨겨진 모든 파일을 비롯한 프로젝트의 실제 파일 구조를 보려면 Project 창의 상단 드롭다운에서 Project를 선택한다.

Project 뷰를 선택하면 훨씬 많은 파일과 디렉터리를 볼 수 있다.

build/ : Build output 파일들이 있습니다.

libs/ : Private library(비공개 라이브러리)들이 있습니다.

src/ : 이 모듈에 대한 모든 code 및 resource 파일들이 있습니다.

  • androidTest/ : Android 기기에서 실행되는 instrumentation 테스트에 대한 code가 있습니다. 자세한 내용은 Android 테스트 문서를 참조하세요.
  • main/ : main source 파일이 있습니다. main source는 Android code 및 resource가 있습니다.
    • AndroidManifest.xml : 애플리케이션의 특성 및 각 구성 요소를 설명합니다. 자세한 내용은 AndroidManifest.xml 문서를 참조하세요.
    • java/ : Java source가 있습니다.
    • jni/ : JNI(Java Native Interface)를 사용하는 native code가 있습니다. 자세한 내용은 Android NDK 문서를 참조하세요.
    • gen/ : Android Studio에서 생성하는 Java 파일(예: R.java 파일) 및 AIDL 파일에서 생성되는 인터페이스들이 있습니다.
    • res/ : 애플리케이션 resource(예: drawable, layout file, UI string 등)가 있습니다. 자세한 내용은 애플리케이션 리소스를 참조하세요.
    • assets/ : .apk 파일 안에 함께 컴파일되어야 하는 파일들이 있습니다. 이 위치의 파일들은 AssetManager 를 통하여 사용할 수 있습니다.
  • test/ : 호스트 JVM에서 실행되는 로컬 테스트의 코드가 있습니다.

build.gradle(모듈) : 모듈별 빌드 구성을 정의합니다.

build.gradle(프로젝트) : 모든 모듈에 적용되는 빌드 구성을 정의합니다. 이 파일은 프로젝트 내의 모든 모듈의 build에 영향을 주기 때문에 version 관리를 잘 해야 합니다. 자세한 내용은 빌드 구성을 참조하세요.

Gradle Scripts : 그룹은 build와 관련된 파일들이 있습니다.app 그룹은 app의 source 등을 포함하고 있고, 하위에 다음과 같은 내용을 보여줍니다.

manifest : AndroidManifest.xml 파일을 포함합니다. App의 Spec을 보여준다고 생각하시면 됩니다.

java : Java source 및 Junit 파일들을 포함합니다.

res : 코드가 아닌 모든 Resource(Image, layout, String 등) 파일들을 포함합니다.

AndroidManifest.xml

App source를 볼 때 가장 먼저 확인해야 할 것은 AndroidManifest.xml이다. 이 파일은 App의 모든 설정 및 component들이 정의되어 있다. Device에 App이 설치될 때 Device는 이 파일을 보고 App에 어떤 내용이 있는지 알게 된다. 만약 이 파일에 Activity를 정의하지 않으면 Device가 알지 못해 실행할 수 없게 된다. 이 파일은 manifests 폴더 아래에 있다.

0개의 댓글