디자인

디자인 편집기의 분할된 화면

레이아웃 편집기이나 네비게이션 편집기 같은 디자인 편집기에서 이제 분할된 화면을 볼수 있는 스플릿뷰 기능을 제공합니다. 이제 코드와 UI를 동시에 볼 수 있습니다. 스플릿뷰는 기존의 프리뷰(Preview)윈도우를 대체하고 파일기반으로 확대배율이나 디자인 뷰 옵션 등의 정보를 보존한다.

Split view for design editors

컬러 피커 리소스 탭 추가

빠르게 컬러 리소스를 고를 수 있는 컬러 피커가 새로 추가되었다.

Color picker resource tab

개발

View binding

뷰 바인딩은 코드에서 뷰를 참조할 때 뷰와 상호 작용하는 코드를 보다 쉽고 안전하게 ​​작성할 수 있는 기능을 컴파일타임에 제공합니다. 뷰 바인딩은 해당 모듈에 있는 각 XML 레이아웃 파일에 대한 바인딩 클래스를 생성하고, 거의 모든 경우에 있어서 뷰 바인딩의 사용으로 findViewById를 대체할 수 있다. NPE(Null Pointer Exception) 또는 ClassCastException에 대한 위험없이 ID가 있는 모든 뷰를 참조 할 수 있습니다. 그렇기 때문에 레이아웃과 코드간 비호환성으로 인해 런타임이에서 에러가 발생하는 것이 아니라 컴파일 타임에 빌드가 실패하기 때문에 생산성이 향상된다. 프로젝트에서 ViewBinding을 사용하려면 각 모듈의 build.gradle 파일에 다음을 포함하십시오.

android {
    viewBinding.enabled = true
}

Android NDK 업데이트

이전에 Java에서 지원되었던 Android Studio의 Android NDK 기능이 Kotlin에서도 지원됩니다.

  • JNI 코드를 통해 C / C ++의 해당 구현 함수로 이동
  • JNI 선언에 대한 스텁 구현 함수를 자동 생성. JNI 선언을 먼저 정의한 다음 활성화 할 C / C ++ 파일에 “jni”또는 메소드 이름을 입력하십시오.

IntelliJ 플랫폼 업데이트

Android Studio 3.6에는 IntelliJ 2019.2 플랫폼 릴리스가 포함되어 있습니다. 이 IntelliJ 릴리스에는 새로운 서비스 툴 윈도우 부터 시작 실행시간이 대폭 개선되는 등 여러 개선사항이 포함되어 있습니다.

Apply Changes로 클래스 추가하기

이제 클래스를 추가하고 실행중인 앱에 Apply Code Changes 또는 Apply Changes and Restart Activity를 클릭하여 코드변경사항을 배포할 수 있다.

빌드

Android Gradle Plugin 업데이트

Android Gradle 플러그인 3.6 이상에는 Maven Publish Gradle 플러그인이 지원되어 빌드 아티팩트를 Apache Maven 저장소에 공개 할 수 있습니다. Android Gradle 플러그인은 앱 또는 라이브러리 모듈에서 각 빌드 변형 아티팩트에 대한 컴포넌트를 작성하여 Maven 저장소에 대한 발행물을 사용자 정의하는 데 사용할 수 있습니다. 이 변경으로 다양한 대상의 릴리스 수명주기를보다 쉽게 ​​관리 할 수 ​​있습니다. 또한 Android Gradle 플러그인은 대규모 프로젝트의 Annotation 프로세싱 / KAPT 성능을 크게 향상 시켰습니다. AGP가 이제 .java 파일 대신 R 클래스 바이트 코드를 직접 생성하기 때문입니다.

새로운 패키징 도구

성능 개선을 위해 기본 패키징 도구를 zipflinger로 변경했습니다. 이전 패키징 도구를 사용하려면 gradle.properties 파일에android.useNewApkCreator=false를 추가해서 비활성화하면됩니다.

gradle.properties 파일을 편집하여 새 패키징 도구를 비활성화하십시오.

테스트

Android 에뮬레이터 – Google Maps UI

Android Emulator 29.2.12에는 앱 개발자가 모의 위치로 연결 할 수 있는 새로운 방법이 포함되어 있습니다. Google지도 사용자 인터페이스를 확장 컨트롤 메뉴에 포함하여 위치를 쉽게 지정하고 위치 쌍에서 경로를 구성 할 수 있습니다. 주소를 입력하거나 두 지점을 클릭하여 경로를 생성 할 수있는 동안 개별 지점을 저장하고 가상 위치로 장치에 다시 보낼 수 있습니다. 이 경로는 경로를 따라 위치가 게스트 OS로 전송되므로 실시간으로 재생할 수 있습니다.

Android Emulator location UI with real-time location streaming

다중 디스플레이 지원

에뮬레이터 29.1.10에는 여러 가상 디스플레이에 대한 지원이 포함되어 있습니다. 여러 디스플레이가 있는 장치들이 출시함에 따라 다양한 멀티 디스플레이 구성에서 앱을 테스트하는 것이 중요해졌습니다. 사용자는 설정 메뉴 ( Extended Controls > Settings )를 통해 여러 디스플레이를 구성 할 수 있습니다 .

Multi-display support in Android Emulator

Configure secondary displays in the Android Emulator Extended Controls Panel

재개 가능한 SDK 다운로드

생략

In-place updates for imported APKs

이제 안드로이드 스튜디오에서 외부에서 빌드하여 만든 APK에 대해 디버깅과 프로파일링을 허용합니다. 

최적화

프로파일러에서 메모리 누수 감지 

메모리 프로파일 러에서 누출 된 활동 및 조각 감지

APK Analyzer에서 난독화된 클래스 및 메소드 바이트코드 해석

APK Analyzer를 사용하여 Dex파일을 분석할 때 클래스 및 메소드 바이트 코드를 해석할 수 있다. Dex 파일 뷰어에서 프로가드 매핑 파일을 불러올 수 있고, 개별파일에 대해 오른쪽 클릭을 하여 바이트 코드를 살펴볼 수 있다.

Deobfuscate class and method bytecode by selecting Show Bytecode in the APK Analyzer

 

 

 

Buy me a coffeeBuy me a coffee
카테고리: Android

0개의 댓글

답글 남기기

이메일은 공개되지 않습니다.