Skip to content

Most visited

Recently visited

navigation

Android Studio 만나보기

Android Studio는 Android 앱 개발을 위한 공식 통합 개발 환경(IDE)이며, IntelliJ IDEA 를 기반으로 합니다. IntelliJ의 강력한 코드 편집기와 개발자 도구 외에도, Android Studio는 Android 앱을 빌드할 때 생산성을 높여주는 다음과 같은 기능을 제공합니다.

이 페이지에서는 Android Studio의 기본 기능을 소개합니다. 최신 변경사항의 요약 내용은 Android Studio 릴리스 노트를 참조하세요.

프로젝트 구조

그림 1. Android 뷰의 프로젝트 파일.

Android Studio의 각 프로젝트에는 소스 코드 파일 및 리소스 파일과 함께 하나 이상의 모듈이 포함됩니다. 모듈의 유형은 다음과 같습니다.

Android Studio는 기본적으로 Android 프로젝트 뷰에 프로젝트 파일을 표시합니다(그림 1 참조). 프로젝트의 주요 소스 파일에 신속하게 액세스할 수 있도록 이 뷰는 모듈별로 구성됩니다.

모든 빌드 파일은 Gradle Scripts 아래의 최상위에 표시되며 각 앱 모듈에는 다음 폴더가 포함됩니다.

디스크 상의 Android 프로젝트 구조는 이 축약 표현과 다릅니다. 프로젝트의 실제 파일 구조를 보려면, Project 드롭다운에서 Project를 선택합니다(그림 1에서는 Android로 표시).

프로젝트 파일의 뷰가 앱 개발의 특정 측면에 중점을 두도록 사용자가 지정할 수도 있습니다. 예를 들어, 프로젝트의 Problems 뷰를 선택하면, 레이아웃 파일에서 인식된 코딩 및 구문 오류 (예: XML 요소 닫기 태그의 누락)가 있는 소스 파일에 대한 링크가 표시됩니다.

그림 2. Problems 뷰의 프로젝트 파일이며, 문제가 있는 레이아웃 파일을 나타냅니다.

자세한 내용은 프로젝트 관리를 참조하세요.

사용자 인터페이스

Android Studio 기본 창은 그림 3과 같은 여러 개의 논리적 영역으로 구성됩니다.

그림 3. Android Studio 기본 창.

  1. 툴바를 사용하면 앱 실행, Android 도구 시작과 같은 다양한 작업을 수행할 수 있습니다.
  2. 탐색 메뉴를 사용하면 프로젝트를 탐색하고 편집할 파일을 열 수 있습니다. 탐색 메뉴는 Project 창에 나타나는 구조를 보다 간략하게 표시합니다.
  3. 편집기 창에서는 코드를 작성하고 수정할 수 있습니다. 현재의 파일 유형에 따라 편집기가 바뀔 수 있습니다. 예를 들어, 레이아웃 파일을 볼 때 편집기는 Layout Editor를 표시합니다.
  4. 도구 창 모음은 IDE 창 바깥 주변에 있으며 개별 도구 창을 펼치거나 접을 수 있게 해주는 버튼이 있습니다.
  5. 도구 창에서는 프로젝트 관리, 검색, 버전 제어 등의 특정 작업에 액세스할 수 있습니다. 도구 창을 펼치거나 접을 수 있습니다.
  6. 상태 표시줄은 프로젝트와 IDE 자체의 상태를 표시하며, 경고나 메시지도 표시합니다.

툴바와 도구 창을 숨기거나 이동하여 더 많은 화면 공간을 제공하도록 기본 창을 구성할 수 있습니다. 또한 단축키를 사용하여 대부분의 IDE 기능에 액세스할 수도 있습니다.

언제든지 Shift 키를 두 번 누르거나 Android Studio 창의 오른쪽 상단 모서리에 있는 돋보기를 클릭하여 소스 코드, 데이터베이스, 액션, 사용자 인터페이스 요소 등에서 검색을 수행할 수 있습니다. 이 검색 기능은 가령 트리거 방법을 잊은 특정 IDE 액션을 찾으려는 경우에 매우 유용할 수 있습니다.

도구 창

Android Studio는 미리 설정된 구성을 사용하는 대신, 상황에 따라 작업 시에 관련 도구 창을 자동으로 불러옵니다. 기본적으로, 가장 자주 사용하는 도구 창이 애플리케이션 창 가장자리의 도구 창 모음에 고정됩니다.

또한 단축키를 사용하여 도구 창을 열 수도 있습니다. 표 1은 가장 일반적인 창의 단축키를 보여줍니다.

표 1. 몇몇 유용한 도구 창의 단축키.

도구 창 Windows 및 Linux Mac
프로젝트 Alt+1 Command+1
버전 관리 Alt+9 Command+9
실행 Shift+F10 Control+R
디버그 Shift+F9 Control+D
Android Monitor Alt+6 Command+6
편집기로 돌아가기 Esc Esc
모든 도구 창 숨기기 Control+Shift+F12 Command+Shift+F12

모든 툴바, 도구 창 및 편집기 탭을 숨기려면 View > Enter Distraction Free Mode를 클릭합니다. 그러면 Distraction Free Mode가 활성화됩니다. Distraction Free Mode를 종료하려면, View > Exit Distraction Free Mode를 클릭합니다.

Speed Search를 사용하면 Android Studio의 대부분의 도구 창 내에서 검색과 필터링을 수행할 수 있습니다. Speed Search를 사용하려면 도구 창을 선택한 다음, 원하는 검색 쿼리를 입력합니다.

추가 도움말은 단축키를 참조하세요.

코드 작성

Android Studio에는 세 가지 유형의 코드 작성 기능이 있으며, 단축키를 사용하여 액세스할 수 있습니다.

표 2. 코드 작성을 위한 단축키.

유형 설명 Windows 및 Linux Mac
기본 완성 변수, 유형, 메서드, 식 등에 대한 기본 추천 항목을 표시합니다. 한 행에서 기본 완성을 두 번 호출하는 경우, 비공개 멤버 및 가져오지 않은 정적 멤버를 비롯하여 더 많은 결과가 나타납니다. Control+Space Control+Space
스마트 완성 상황에 따라 관련 옵션을 표시합니다. 스마트 완성은 예상되는 유형과 데이터 흐름을 인식합니다. 한 행에서 스마트 완성을 두 번 호출하는 경우, 체인을 비롯하여 더 많은 결과가 나타납니다. Control+Shift+Space Control+Shift+Space
명령문 완성 현재 명령문을 자동으로 완성하고 누락된 소괄호, 중괄호, 대괄호, 서식 등을 추가합니다. Control+Shift+Enter Shift+Command+Enter

Alt+Enter를 눌러 신속하게 수정하고 원하는 액션을 표시할 수도 있습니다.

코드 작성에 대한 자세한 내용은 코드 작성을 참조하세요.

샘플 코드 찾기

Android Studio의 Code Sample Browser를 사용하면 프로젝트에서 현재 강조표시된 기호를 바탕으로 Google에서 제공하는 고품질 Android 코드 샘플을 손쉽게 찾을 수 있습니다. 자세한 정보는 샘플 코드 찾기를 참조하세요.

탐색

다음은 Android Studio를 탐색하는 데 필요한 몇 가지 유용한 정보입니다.

스타일 및 서식

편집 중에 Android Studio는 코드 스타일 설정에 지정된 대로 서식과 스타일을 자동으로 적용합니다. 프로그래밍 언어로 코드 스타일 설정을 사용자 지정할 수 있으며, 여기에는 탭과 들여쓰기, 공백, 줄바꿈 및 괄호, 빈 줄의 규칙을 지정하는 것이 포함됩니다. 코드 스타일 설정을 사용자 지정하려면 File > Settings > Editor > Code Style(Mac은 Android Studio > Preferences > Editor > Code Style)을 클릭합니다.

IDE는 작업 중에 서식을 자동으로 적용하지만, Control+Alt+L(Mac은 Opt+Command+L)을 눌러 Reformat Code 액션을 명시적으로 호출하거나 Control+Alt+I(Mac은 Alt+Option+I)를 눌러 모든 줄에 자동 들여쓰기를 적용할 수 있습니다.

그림 5. 서식 지정 전의 코드.

그림 6. 서식 지정 후의 코드.

버전 제어 기본 정보

Android Studio에서는 다양한 버전 제어 시스템(VCS)을 지원하며 여기에는 Git, GitHub, CVS, Mercurial, Subversion 및 Google Cloud Source Repositories가 포함됩니다.

앱을 Android Studio로 가져온 후에, Android Studio의 VCS 메뉴 옵션을 사용하여 원하는 버전 제어 시스템에 대해 VCS 지원을 활성화하고, 리포지토리를 만들고, 새 파일을 버전 제어로 가져오고, 기타 버전 제어 작업을 수행합니다.

  1. Android Studio의 VCS 메뉴에서 Enable Version Control Integration을 클릭합니다.
  2. 드롭다운 메뉴에서 프로젝트 루트에 연결할 버전 제어 시스템을 선택한 다음, OK를 클릭합니다.

이제 선택한 시스템에 따라 VCS 메뉴에 여러 가지 버전 제어 옵션이 표시됩니다.

참고: File > Settings > Version Control 메뉴 옵션을 사용하여 버전 제어 설정을 구성하고 수정할 수도 있습니다.

Gradle 빌드 시스템

Android Studio는 빌드 시스템의 기반으로 Gradle을 사용하며, 더 많은 Android 전용 기능이 Gradle용 Android 플러그인을 통해 제공됩니다. 이 빌드 시스템은 Android Studio 메뉴에서는 통합 도구로 실행되고, 명령줄에서는 독립적으로 실행됩니다. 이 빌드 시스템의 기능을 사용하여 다음 작업을 수행할 수 있습니다.

Gradle의 유연성을 활용하면 앱의 주요 소스 파일을 수정하지 않고도 이 모든 작업을 수행할 수 있습니다. Android Studio 빌드 파일은 build.gradle로 명명됩니다. 이 빌드 파일은 Groovy 구문을 사용하는 일반 텍스트 파일이며, Gradle용 Android 플러그인이 제공하는 요소들로 빌드를 구성합니다. 전체 프로젝트에서 각 프로젝트에는 하나의 최상위 빌드 파일이 있으며 각 모듈에 대해 별도의 모듈 수준 빌드 파일이 있습니다. 기존 프로젝트를 가져오는 경우, Android Studio는 필요한 빌드 파일을 자동으로 생성합니다.

빌드 시스템과 구성 방법에 대해 자세히 알아보려면, 빌드 구성을 참조하세요.

빌드 변형

빌드 시스템을 사용하여 단일 프로젝트에서 동일한 애플리케이션의 다양한 버전을 만들 수 있습니다. 이 기능은 무료 버전 앱과 유료 버전 앱이 둘 다 있는 경우나 Google Play에서 다른 기기 구성에 대해 여러 APK를 배포하려는 경우에 유용합니다.

빌드 변형 구성에 대한 자세한 내용은 Gradle 빌드 구성을 참조하세요.

APK 분할

APK 분할을 사용하면 화면 밀도 또는 ABI에 따라 여러 APK를 효율적으로 생성할 수 있습니다. 예를 들어, APK 분할을 사용하면 hdpi 및 mdpi 버전의 앱을 별도로 만들 수 있습니다. 이 두 버전은 단일 변형으로 간주되고, 테스트 앱, javac, dx 및 ProGuard 설정을 공유할 수 있습니다.

APK 분할 사용에 대한 자세한 내용은 APK 분할을 참조하세요.

리소스 축소

Android Studio의 리소스 축소는 패키징된 앱과 라이브러리 종속성으로부터 미사용 리소스를 자동으로 제거합니다. 예를 들어, 애플리케이션이 Google Play 서비스를 사용하여 Google 드라이브 기능에 액세스 중이고, 현재 Google 로그인을 사용하고 있지 않은 경우, 리소스 축소를 사용하면 SignInButton 버튼의 다양한 드로어블 자산을 제거할 수 있습니다.

참고: 리소스 축소는 ProGuard 등의 코드 축소 도구와 함께 사용됩니다.

코드 및 리소스 축소에 대한 자세한 내용은, 코드 및 리소스 축소를 참조하세요.

종속성 관리

프로젝트의 종속성은 build.gradle 파일에 이름으로 지정됩니다. Gradle은 종속성을 찾고 빌드에서 사용할 수 있게 만듭니다. 모듈 종속성, 원격 바이너리 종속성 및 로컬 바이너리 종속성을 build.gradle 파일에 선언할 수 있습니다. 기본적으로 Android Studio는 Maven Central Repository를 사용하도록 프로젝트를 구성합니다. (이 구성은 프로젝트의 최상위 빌드 파일에 포함됩니다.) 종속성 구성에 대한 자세한 내용은, 빌드 변형 구성을 참조하세요.

디버그 및 프로필 도구

Android Studio는 코드를 디버깅하고 코드 성능을 개선하도록 도와주며, 여기에는 인라인 디버깅 및 성능 분석 도구가 포함됩니다.

인라인 디버깅

참조, 식 및 변수 값의 인라인 확인 기능이 있는 디버거 뷰에서 인라인 디버깅을 사용하여 코드 검토 능률을 높입니다. 인라인 디버그 정보에는 다음과 같은 항목이 포함됩니다.

그림 7. 인라인 변수 값.

인라인 디버깅을 활성화하려면 Debug 창에서 Settings 를 클릭하고Show Values Inline의 확인란을 선택합니다.

성능 모니터

Android Studio는 성능 모니터를 제공하며 이를 통해 앱의 메모리 및 CPU 사용량을 보다 쉽게 추적하고, 할당 해제된 객체를 확인하고, 메모리 누수를 찾아내고, 그래픽 성능을 최적화하고, 네트워크 요청을 분석할 수 있습니다. 기기나 에뮬레이터에서 앱이 실행될 때, Android Monitor 도구 창을 열고 Monitors 탭을 클릭합니다.

성능 모니터에 대한 자세한 내용은, Android 모니터를 참조하세요.

힙 덤프

Android Studio에서 메모리 사용량을 모니터링 중인 경우, 동시에 가비지 수집을 시작하고 자바 힙을 Android 전용 HPROF 바이너리 형식 파일로 힙 스냅샷에 덤프할 수 있습니다. HPROF 뷰어는 클래스, 각 클래스의 인스턴스 및 참조 트리를 표시하므로 메모리 사용량을 추적하고 메모리 누수를 찾는데 도움이 됩니다.

힙 덤프 사용에 대한 자세한 내용은, 자바 힙 덤프 및 분석을 참조하세요.

Allocation Tracker

Android Studio는 메모리 사용을 모니터링하므로 개발자가 메모리 할당을 추적할 수 있습니다. 메모리 할당을 추적하면 특정 작업을 수행할 때 객체가 어디에 할당되는지를 모니터링할 수 있습니다. 이러한 할당을 알고 있으면 해당 작업과 관련된 메서드 호출을 조정하여 앱의 성능과 메모리 사용을 최적화할 수 있습니다.

할당 추적 및 분석에 대한 자세한 내용은, Allocation Tracker를 참조하세요.

데이터 파일 액세스

Systrace, logcatTraceview와 같은 Android SDK 도구는 상세한 앱 분석을 위한 성능 및 디버깅 데이터를 생성합니다.

사용 가능한 생성된 데이터 파일을 보려면, Captures 도구 창을 엽니다. 생성된 파일 목록에서 파일을 두 번 클릭하여 데이터를 봅니다. .hprof 파일을 마우스 오른쪽 버튼으로 클릭하여 표준 .hprof 파일 형식으로 변환합니다.

코드 검사

프로그램을 컴파일할 때마다 Android Studio가 구성된 Lint 및 기타 IDE 검사를 자동으로 실행하여, 코드의 구조적 문제를 쉽게 식별하고 수정하도록 도와줍니다.

Lint 도구는 잠재적 버그를 찾아내고 정확성, 보안, 성능, 가용성, 접근성 및 국제성을 높이기 위해 Android 프로젝트 소스 파일을 검사합니다.

그림 8. Android Studio에서 Lint 검사의 결과.

Lint 검사 외에도, Android Studio는 IntelliJ 코드 검사를 수행하고 주석의 유효성을 검사하여 코딩 워크플로를 능률화합니다.

자세한 내용은 Lint를 사용하여 코드 개선Lint 도구를 참조하세요.

Android Studio의 주석

Android Studio는 변수, 매개변수 및 반환 값에 대한 주석을 지원하므로, null 포인터 예외 및 리소스 유형 충돌 등의 버그를 잡아낼 수 있습니다. Android SDK Manager는 Android Studio에서 사용할 수 있도록 Support-Annotations 라이브러리를 Android 지원 리포지토리에 패키징합니다. Android Studio는 코드를 검사하는 동안 구성된 주석의 유효성을 검사합니다.

Android 주석에 대한 자세한 내용은 주석이 있는 코드 검사 향상을 참조하세요.

로그 메시지

Android Studio로 앱을 구축하고 실행할 경우, 창 맨 아래에 있는 Android Monitor를 클릭하여 adb 출력 및 기기 로그 메시지(logcat)를 볼 수 있습니다.

Android Device Monitor로 앱을 디버깅하려는 경우, Tools > Android > Android Device Monitor를 클릭하여 Device Monitor를 실행할 수 있습니다. Device Monitor는 앱 프로파일링, 기기 동작 제어 등을 수행하기 위한 완벽한 DDMS 도구 세트를 제공합니다. 여기에는 레이아웃 최적화를 도와주는 Hierarchy Viewer 도구도 포함됩니다.

This site uses cookies to store your preferences for site-specific language and display options.

Get the latest Android developer news and tips that will help you find success on Google Play.

* Required Fields

Hooray!

Browse this site in ?

You requested a page in , but your language preference for this site is .

Would you like to change your language preference and browse this site in ? If you want to change your language preference later, use the language menu at the bottom of each page.

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a one-minute survey?
Help us improve Android tools and documentation.