[요약] What’s new in Android Studio (Android Dev Summit '21)
Oct 30, 2021. | By:
pluulove
Android Studio Arctic Fox
- Android Studio Arctic Fox는 현재 Stable 릴리스 채널에 있다
- Design
- Jetpack Compose에 대한 도구 지원 (Layout Inspector)
- Device
- WearOS의 심박수 센서 및 Google TV를 지원하는 Android TV 에뮬레이터 등 다양한 기능이 포함되어 있다
- Dev Productivity
- WorkManager 도구를 통해 개발자 생산성을 개선하기 위한 작업이 들어있다.
Android Studio Bumblebee
- Material You에 대한 초기 지원 및 Jetpack Compose 도구의 개선이 포함되어 있다
- Android 12L을 사용하여 큰 화면에 맞게 앱을 만들 수 있다.
Android Studio Chipmunk
- Android Studio 다음 릴리스의 코드명은
Chipmunk
이다.
Upgrade Assistant
- AGP 업그레이드 도우미를 통해서 프로젝트 업그레이드를 사용할 수 있다.
Build Analyzer
- 프로젝트 빌드 후 Build Analyzer에서 Build Configuration 시간을 최적화할 수 있다.
- Configuration Cache가 설정된 상태로 빌드를 실행할 수 있다
- 빌드가 Configuration Cache와 호환되는지 확인이 필요하다
gradle.properties에 환경 변수를 설정하면 된다.
org.gradle.unsafe.configuration-cache=true
Non-Transitive R Classes
non-transitive R classes 지원
- Menu -Refactor - Migrate to Non-Transitive R Classes를 통해서 실행 가능
- 리소스를 참조하는 소스 파일을 찾은 다음 프로젝트 로컬로 수정한다.
- 최종적으로 Resource merging을 건너뛰게 함으로 성능에 도움이 된다
- 특히, 많은 모듈과 리소스가 포함된 프로젝트에 유용하다
Lint
- Bumblebee Canary 13 이상에서는 증분 Lint 작업, 캐싱, Remote 캐싱을 지원한다
Profilers
- 원활하게 프레임 출력을 하지 못하는 버벅거리는 현상을 추적하는데 유용하다
- Android 11 및 12에서 프레임의 수명 주기를 캡처할 수 있다
- Frames view에서 Frame이 신청서에 소요된 시간을 볼 수 있다
- 샘플에서는 이전 프레임이 오랫동안 디스플레이에 표시된 것이 버벅거리는 이유이다.
- RenderThread 및 애플리케이션에서 어떤 작업을 수행하는지 확인할 수 있다
- 샘플에서는 동시에 많은 Texture를 로드하려고 한 것이 버벅임의 원인이다
Graphical editors
- 이제 Android Studio에서 임베디드 된 상태로 Emulator를 실행할 수 있다
- Bumblebee에서 Emulator의 Snapshot 사용은 기본값이다
- 새로운 Device Manager는 기존 팝업으로 노출하던 AVD Manager 대신합니다.
- 에뮬레이터와 Wi-Fi 페어링으로 연결된 물리적 장치 화면을 볼 수 있다
Emulator |
실제 단말 |
|
|
- 디바이스를 회전할 때 자연스럽게 UI를 노출하는 방법으로 MotionLayout을 선택할 수 있다
Visual Linting
- Phone/Forldable/Tablet 등, 일부 모드에서 애니메이션이 깨져있는 경우 미리 개발자에게 알려준다
샘플1 |
샘플2 |
|
|
- Layout Validation에서도 레이아웃 간의 불일치를 표시해 준다.
- 이런 체크들은 백그라운드에서 체크하며 점점 확장할 계획이다
Compose
- Arctic Fox부터 Compose에 대해서 완전히 지원한다
- Bumblebee에 몇 가지 기능이 추가되었다
- Interactive Preview
- Preview에서 Start Interactive Mode 클릭으로 실행할 수 있다
- 중요한 것은
터치 입력으로 움직임 테스트
를 할 수 있다
- Animation Inspection
- 원하는 경우 애니메이션의 위치를 선택하거나 루프로 재생할 수 있다
- 애니메이션의 조합을 살펴보는데 유용하다
@Preview
Annotation 옆에 있는 아이콘으로 Preview의 구성을 쉽게 변경할 수 있다
Compose 개발 시 빌드 속도가 큰 걸림돌이므로 이를 돕는 기능을 소개한다
- Live Edit of literals
- 숫자, 문자열, Color, Dp, Boolean 타입의 값에 대한 실시간 편집을 지원한다
- 에뮬레이터뿐만 아니라 실제 단말에서도 동작한다
출처 : https://developer.android.com/jetpack/compose/tooling#live-edit-literals
Live Editing (개발 중)
- Live Edit of literals보다 더 일반적인 시나리오를 편집하는데 유용하다
- 이 기능은 Preview뿐만 아니라 실제 디바이스로 개발 시에도 사용됩니다.
Light Mode (개발 중)
- 실시간 편집과는 정반대의 기능이다
- 실시간 편집 및 Visual Linting은 많은 계산을 통해서 일어나는 동작이다.
- Light Mode를 사용하면 IDE를 사용하는 동안 리소스를 더 적게 사용할 수 있다.
- 유효성 검사를 수행하지 않는다
- Go to 선언과 같은 기본 편집 기능은 사용 가능
- File - Light Mode를 통해서 활성화할 수 있다.
- 단순 입력 시에는 유효성 검사를 하지 않으므로, 입력 중에 잘못 작성된 코드는 검사하지 않는다. 파일 저장 시 기본 유효성 검사를 수행한다.
Etc
- IntelliJ 2021.2의 일부 새로운 기능
- Android 12L 등을 위한 크기 조정 가능한 에뮬레이터
Recap
comments powered by