-
이 글은 D8 이 출시되기 전에 쓰여진 글이라 현재는 deprecated doc 이라고 볼 수 있겠다.
D8 에 대한 이야기는 아래 링크를 참조하시길..
-
Android APK 를 만들 때 Javac 를 이용해서 bytecode 인 .class 를 만든 후
dex compiler 를 이용해서 bytecode 들을 .dex 로 만든다.
-
Android Studio 3.0 Beta 부터 "D8" 이라고 불리는 새로운 dex compiler 를 사용할 수 있다.
D8 은 compile time 도 줄였고, .dex 파일 사이즈도 줄였다..
Android 측에서 제공하는 자료에 따르면 Compile Time 은 약 30% 정도 줄었다.
파일 사이즈는 약 5% 정도 줄었다. ( 사이즈는 큰 변화가 없구만.. )
-
D8 compiler 는 compile time 과 file size 줄이기라는 장점을 가지는데,
그 중, compile time 의 개선이 두드러져 보여서 적용할만 해 보인다.
적용방법은 gradle.properties 파일에 아래 문구를 넣어주면 된다.
android.enableD8 = true
-
Android 측에 따르면 현재(2017. 08. 11) D8 의 정합성과 속도는 여러개의 앱에서 테스트 해보았으며 고무적인 성과를 냈다.
그리고 그 결과를 바탕으로 AOSP 를 빌드할 때 기본 dex compiler 로 D8 을 사용하도록 변경중에 있다고 한다.
현재 알려진 이슈는 없으며, 유저들이 사용하면서 발견하는 이슈는 대응 예정이라고 한다.
-
계획은 Android Studio 3.0 에서 몇달동안 bug report 를 수집하여 수정하고,
Android Studio 3.1 부터는 기본 dex compiler 로 채택 예정이라고 한다.
-
덧붙여 "R8" 이라는 proguard 를 대체하는 녀석도 개발중이라고 한다.
-
참고 자료
https://android-developers.googleblog.com/2017/08/next-generation-dex-compiler-now-in.html
끝!!
'프로그래밍 놀이터 > 안드로이드, Java' 카테고리의 다른 글
[android] M os Runtime Permission 에 대한 이야기 (0) | 2017.08.25 |
---|---|
[android] Notification 에 meta data 를 추가하자 (0) | 2017.08.24 |
[android] Kiosk mode app 을 만들자! (0) | 2017.08.07 |
[android] Play Store 에 대한 미신 (0) | 2017.08.06 |
[android] ListView scroll 할 때 Toolbar 감추기 (0) | 2017.08.05 |
댓글