Android Studio 팀은 최신 버전의 Android 공식 IDE와 빌드 시스템인 Android Studio Bumblebee(2021.1.1) 🐝 및 Android Gradle 플러그인(AGP) 7.1.0의 안정화 버전 출시로 떠들썩한 활기가 넘쳤습니다. 전형적인 개발자 워크플로의 폭넓은 영역, 즉 빌드 및 배포, 프로파일링 및 검사, 디자인에 걸쳐 다양한 기능을 개선했습니다.
몇 가지 주목할 만한 추가적인 특징으로는 Android Studio와 CI(지속적 통합) 서버 간의 통합 테스트 실행 ✅, Wi-Fi를 통한 ADB 지원을 위한 편리한 페어링 흐름 📲, 앱의 버벅거림을 식별하고 분석하는 데 도움이 되는 향상된 프로파일러 도구 🕵️, 앱을 기기에 배포하지 않고 애니메이션 🎥 및 UI 상호 작용을 미리 보는 새로운 방법 등이 있습니다.
언제나처럼 프리뷰 사용자가 조기에 전해주신 다양하고 소중한 의견 덕분에 이번 릴리스도 무사히 선보일 수 있게 되었습니다. 이 안정적인 버전에서 찾을 수 있는 추가 주요 사항과 새로운 기능에 대해서는 아래에서 관련 글을 읽거나 영상을 시청해주세요. 직접 확인할 준비가 되었다면 공식 웹사이트에서 Android Studio Bumblebee(2021.1.1)를 다운로드하세요.
Android Studio Bumblebee(2021.1.1)의 모든 새로운 기능을 정리해둔 3가지 테마를 확인해 보세요.
새로운 Device Manager: Bumblebee에 새로 도입된 이 새로운 도구 창을 사용하면 가상 및 실제 테스트 기기를 더 쉽게 보고 관리할 수 있습니다. 주 메뉴 바에서 View > Tool Windows > Device Manager를 선택하여 열 수 있습니다. Virtual 탭에서는 새 기기를 만들거나, 기기 세부 정보를 검토하거나, 기기를 삭제하거나, 지금은 제거된 AVD Manager에서 수행했던 다른 모든 작업을 수행할 수 있습니다. Physical 탭에서는 ADB Wi-Fi를 사용하여 새 기기에 빠르게 페어링하고 각 실제 기기의 세부 정보를 한눈에 확인하거나, 버튼 하나만 간편하게 클릭해 Device File Explorer를 통해 각 기기의 파일 시스템을 빠르게 검사할 수 있습니다. 출시 노트에서 새로운 Device Manager에 대해 자세히 알아보세요.
Device Manager
Wi-Fi를 통한 ADB: Bumblebee에는 ADB를 사용한 배포와 디버깅을 위해 Wi-Fi를 통해 Android 11 이상의 기기에 연결하는 간소화된 흐름이 포함되어 있습니다. 기기에서 Wi-Fi를 통한 디버깅을 활성화한 후, 새로운 Device Manager의 Physical 탭에서 Pair using Wi-Fi 작업을 선택하여 페어링 마법사를 엽니다. 그런 다음, 제시되는 단계에 따라 같은 네트워크를 통해 연결된 기기에 페어링합니다. 자세히 알아보세요.
Wifi를 통한 ADB와의 기기 페어링
Gradle을 사용하여 Android Studio에서 계측 테스트 실행: CI에서 동작하는 동일한 테스트가 Android Studio에서는 다른 결과를 반환한 적이 있나요? 이는 생산성 손실로 이어지는 난감한 문제일 수 있습니다. 이 문제를 해결하고자, Android Studio Bumblebee가 계측 테스트를 실행할 때 기본적으로 사용하는 AGP(Android Gradle 플러그인) 7.1.0에 새로운 테스트 실행기를 도입해 통합 테스트 실행기를 통해 모든 테스트를 실행하도록 했습니다. 이는 기본적으로 Gradle을 통해 모든 단위 테스트를 실행하기 시작한 Android Studio Arctic Fox와 유사한 개선 사항입니다. 마찬가지로, 이 개선 사항으로 인해 테스트 작성 또는 실행 방법을 변경할 필요는 없습니다!
다른 실행기를 사용하면 일관된 결과를 얻을 수 없음
Android Studio는 이제 Gradle을 통해 계측 테스트를 실행함
이제는 Android Gradle 플러그인 업그레이드 도우미가 API 사용 업데이트: Android Studio 4.2에 처음 도입되었던 AGP 업그레이드 도우미는 사용자가 프로젝트를 최신 버전으로 업데이트하는 데 도움이 되었고, Arctic Fox의 개선을 통해 새 UI에 업그레이드 버전과 단계를 검토하고 선택하는 기능을 제공했습니다. 이제 Bumblebee는 업그레이드 도우미가 지원 중단된 API가 삭제되기 전에 이런 API를 사용하지 않도록 DSL의 검사와 업데이트를 제안합니다. 자세한 내용은 Android Gradle 플러그인 DSL/API 마이그레이션 타임라인을 참조하세요.
새 프로젝트를 위한 비전이적 R 클래스: Android Studio Arctic Fox에서는 비전이적 R 클래스를 사용하여 여러 모듈이 있는 애플리케이션을 더 빠르게 빌드할 수 있도록 도와주는 새로운 리팩터링 도구를 도입했습니다. Bumblebee를 사용하여 새 프로젝트를 만들 때, IDE는 기본적으로 비전이적 R 클래스를 사용하도록 프로젝트를 구성합니다. 이를 통해 성능이 향상되지만, R 클래스가 더 이상 전이적으로 결정되지 않으므로, 이제는 상위 모듈의 패키지 이름이 아니라 적절한 패키지 이름으로 R 클래스를 참조해야 합니다. 자세한 내용은 비전이적 R 클래스 사용을 참조하세요.
기본적으로 활성화되는 에뮬레이터 도구 창: Android Studio 4.1에 도입된 에뮬레이터는 Android Studio 도구 창 내에서 시작되며, IDE 컨텍스트 내에서 유지하는 동안 가상 이 에뮬레이터로 Android 기기를 배포하고 기기와 상호 작용할 수 있습니다. 이러한 변경 사항은 확장된 컨트롤 및 스냅샷 관리를 위해 개선된 UX를 잘 보여줍니다. 자세한 내용은 Android Studio에서 직접 Android Emulator 실행을 참조하세요.
Apple Silicon 지원 업데이트 - Apple Silicon(arm64) 하드웨어에서 macOS를 사용하는 사용자를 위해, Android Studio Arctic Fox와 Android Emulator는 작년부터 이 새로운 아키텍처를 지원했습니다.이 릴리스에서는 Android SDK 플랫폼 도구 v32.0.0(ADB 및 빠른 부팅 포함)과 빌드 도구 v32.1.0(aapt 포함)을 범용 바이너리가 되도록 업데이트했으므로, Android 개발자 도구에서 더 이상 Rosetta 바이너리 변환기를 실행할 필요가 없습니다. 커뮤니티에서 접수한 의견을 바탕으로, 이 하드웨어 플랫폼에서 작업하는 개발자들은 놀라운 성능 향상을 경험했습니다. 출시 노트를 참조하세요.
프로파일러의 버벅거림 감지 트랙: Android 11(API 수준 30) 이상을 실행하는 기기를 사용하여 앱을 프로파일링할 때, CPU 프로파일러는 이제 Frame Lifecycle 아래에 있는 각 프레임의 단계, 즉 Application, Wait for GPU, Composition, Frames on display를 설명하는 새로운 트랙 그룹을 표시합니다. 각 트랙은 프레임에 프레임 번호로 라벨을 지정하고 사각형에 색상 코드를 지정하여 특정 프레임이 해당 수명 주기의 어디에 있는지 쉽게 시각화할 수 있게 해줄 뿐 아니라, 전환하여 Vsync 이벤트와 비교할 수 있도록 안내하기도 합니다. 이 데이터를 사용하여 앱에서 버벅거림이 발생할 수 있는 위치를 파악하고 근본 원인을 조사할 수 있습니다. Analysis 패널에는 이제 모든 프레임에 대한 렌더링 정보를 편리하게 요약한 Frames 탭이 있습니다. 자세한 내용은 UI 버벅거림 감지를 참조하세요.
CPU 프로파일러의 자세한 프레임 수명 주기 정보
Studio 프로파일러의 Profileable 앱 프로파일링 지원: 앱을 프로파일링할 때는 사용자가 설치할 앱과 가장 흡사한 앱 버전으로 정확한 데이터를 생성하는 것이 중요합니다. 이제는 아래에 표시된 것처럼 디버그할 수 없는 앱을 프로파일링하기 위해 앱의 매니페스트에 <profileable> 속성을 포함하여 그렇게 할 수 있습니다.<profileable android:shell="true"/>Profileable은 Android 10에 도입된 매니페스트 구성으로, CPU 및 메모리 프로파일링 작업에 사용할 수 있습니다. debuggable 플래그 대신 profileable 플래그를 사용하면 성능 측정을 위한 오버헤드가 더 낮다는 주요 이점이 있지만, 이벤트 타임라인, API 시작 CPU 프로파일링, 힙 덤프 또는 라이브 위치 기록과 같은 Profileable 빌드에 특정 프로파일링 기능을 사용할 수 없습니다. 자세한 내용은 Profileable 애플리케이션을 참조하세요.
Jobs, Alarms, Wakelocks 검사: Jobs, Alarms, Wakelocks를 검사할 수 있도록 Background Task Inspector를 확장했습니다. 이러한 백그라운드 작업의 예약 방식에 대한 실시간 정보를 보고, Workers의 검사 방법과 유사하게 실행에 대한 세부 정보를 확인할 수 있습니다. 그뿐 아니라, Workers를 검사할 때 Workers가 자동으로 Jobs를 추적하고 검사할 수도 있습니다. 이전 버전의 IDE에서 Energy Profiler를 사용하곤 했다면, 이제는 메뉴 바에서 View > Tool Windows > App Inspection로 이동하고 Background Task Inspector를 선택하여 Jobs, Alarms, Wakelocks를 검사해야 합니다.
Background Task Inspector에서 Jobs, Alarms, Wakelocks 검사
네트워크 검사: 이제 네트워크 프로파일러가 App Inspection 도구 창으로 마이그레이션되어 앱의 네트워크 트래픽 검사를 위해 더 가벼운 환경을 제공할 수 있습니다. 네트워크 프로파일러의 모양과 느낌은 그대로 유지되었으며 API 수준 26 이상을 실행하는 기기에서 디버그 가능한 모든 앱과 함께 작동합니다. 새 검사기를 사용하려면 메뉴 바에서 View > Tool Windows > App Inspection 을 선택하고 Network Inspector를 선택하세요. 자세한 내용은 Network Inspector를 사용한 네트워크 트래픽 검사를 참조하세요.
Layout Inspector 스냅샷 캡처: 이제 앱 레이아웃 계층 구조의 스냅샷을 캡처하여 나중에 저장, 공유 또는 검사할 수 있습니다. 스냅샷은 레이아웃의 세부적인 3D 렌더링, View, Compose 또는 하이브리드 레이아웃의 구성 요소 트리, UI의 각 구성 요소에 대한 자세한 속성을 포함하여, Layout Inspector를 사용할 때 일반적으로 나타나는 데이터를 캡처합니다. 라이브 실행 앱의 레이아웃을 검사할 때 Layout Inspector 툴바에서 Export snapshot을 클릭하고 확장자를 *.li로 하여 스냅샷을 저장합니다. 그런 다음, 주 메뉴 바에서 File > Open을 선택하고 *.li 파일을 열어 Layout Inspector 스냅샷을 로드할 수 있습니다. 스냅샷은 Editor 창의 탭에 나타나므로, 실행 중인 앱과 쉽게 비교할 수 있습니다. 레이아웃 계층 구조 스냅샷 캡처에서 자세히 알아보세요.
Layout Inspector에서 Compose 시맨틱 지원: Compose에서 Semantics는 Accessibility 서비스와 Testing 프레임워크에 대해 이해할 수 있는 다른 방식으로 UI를 설명합니다. Android Studio Bumblebee에서는 이제 Layout Inspector를 사용하여 Compose 레이아웃에서 시맨틱 정보를 검사할 수 있습니다. Compose 노드를 선택할 때 Attributes 창을 사용하여 시맨틱 정보를 직접 선언하는지, 하위 요소의 시맨틱을 병합하는지 또는 둘 다인지 검사하세요. 선언되거나 병합된 시맨틱을 포함하는 노드를 빠르게 식별하려면 Component Tree 창에서 View options 드롭다운을 사용해 Highlight Semantics Layers를 선택하세요.
대화식 미리보기: Android Studio Arctic Fox는 Editor의 Design / Split 창에서 구성 가능한 함수를 정적으로 미리 보는 지원 기능을 포함하여 출시되었습니다. Bumblebee에서는 Compose 레이아웃의 특정 구성 요소와 상호 작용할 수 있는 기능을 확장함으로써, 전체 앱을 빌드해 작동 중인 기기에 배포하지 않고도 동작의 유효성을 검사할 수 있게 했습니다! 시작하려면 미리 볼 수 있는 Compose 함수로 이동하고 Design / Split 창에서 Start Interactive Mode를 클릭하세요. 자세한 내용은 대화형 모드를 참조하세요.
Compose Preview와 상호 작용하여 동작 유효성 검사
애니메이션 벡터 드로어블 미리보기: 이제 벡터 드로어블을 볼 때 Preview 창도 사용할 수 있습니다. 정적 드로어블을 볼 때 미리보기 창을 사용하여 'None', 'White', 'Black', 'Checkedered' 사이의 백그라운드 옵션을 변경해 다양한 조건에서 드로어블을 볼 수 있습니다. 애니메이션 드로어블은 백그라운드뿐 아니라 다양한 속도로 애니메이션을 미리 보는 옵션도 제공하여 앱에서 애니메이션을 테스트한 후 사용하도록 합니다. 자세히 알아보려면 AVD(Animated Vector Drawables) 미리 보기를 참조하세요.
애니메이션 벡터 드로어블 미리보기
디자인 도구용으로 업데이트된 기기 선택기: 다양한 수의 Android 기기용 앱 디자인을 간소화하고자, Layout Editor 및 Layout Validation 같은 다양한 디자인 도구 창에서 각 기기 폼 팩터에서 인기 있는 크기를 반영한 기준 기기로 기기 선택기를 업데이트했습니다. 스마트폰부터 태블릿, Wear 기기, Android TV까지, 이제는 많이 사용하는 실제 기기를 가장 잘 대표하는 화면 크기에서 레이아웃을 더 쉽게 미리 보거나 확인하거나 편집할 수 있습니다. 자세히 알아보려면 미리보기 모양 변경을 참조하세요.
요약하자면, Android Studio Bumblebee(2021.1.1)에는 다음과 같이 향상된 기능과 새로운 기능이 포함되어 있습니다.