안드로이드 multidex 문제 해결하기
안드로이드에서 앱 개발을 하다 규모가 커지게 되면 코드도 많아지고 라이브러리도 많아지게 됩니다.
이럴때 빌드시 오류가 발생하게 됩니다.
trouble writing output: Too many field references: 131000; max is 65536. You may try using --multi-dex option. |
이 오류는 65536(64K)개 이상의 함수(Method)를 초과할 경우에 발생 합니다. 안드로이드에서는 JAVA의 class 를 사용하지 않고 class -> dex로 변환하여 사용하고 있습니다. 즉, java에서는 MainActivity.java를 컴파일 하면 MainActivity.class 생성되는데 이를 다시 MainActivity.dex 파일로 변환하게 됩니다.
dex는 Dalvik Executable로 안드로이드 달빅 가상 머신 (DVM)에서 실행되는 포맷입니다.
dex 파일은 함수를 64K를 초과할 수 없습니다. 이를 해결위해 Multidex 개념이 나오게 된것입니다.
Multidex는 64K 메소드가 넘은 dex파일을 여러개로 쪼개주고 쪼개진 dex를 읽을 수 있도록 해줍니다
해결하기
안드로이드 공식 문서 ->https://developer.android.com/studio/build/multidex?hl=ko
'Android > Android관련 이것 저것..' 카테고리의 다른 글
안드로이드 디버그 - 중단점 걸기 (4) | 2019.02.13 |
---|---|
안드로이드 타이틀바와, 스테이터스바 없애기( FULL SCREEN) ,WindowManager (2) | 2019.02.04 |
안드로이드 앱런처 만들기 (4) | 2019.01.29 |
Retrofit 사용하기 (4) | 2019.01.23 |
Gson 라이브러리 사용하기 (4) | 2019.01.22 |
댓글