Android - Multidex 오류 해결법
Android build 시 Mutidex 관련 문제로 build 실패할 경우가 있다.
Mutidex가 뭐지 알고보고 해결 방법에 대해 알아보자.
Mutidex 란?
▷ 64K 참조 제한 관련 정보
- Android 앱(APK) 파일에는 Dalvik Executable(DEX) 파일 형식의 실행 가능한 바이트 코드 파일이 포함되며, DEX 파일에는 앱을 실행하기 위해 사용되는 컴파일된 코드가 포함됩니다. Dalvik Executable 사양은 단일 DEX 파일 내에서 참조될 수 있는 메서드의 총 개수를 65,536개로 제한하며 여기에는 Android 프레임워크 메서드, 라이브러리 메서드, 자체 코드에 있는 메서드가 포함됩니다.컴퓨터 공학에서 킬로 또는 K라는 용어는 1,024(또는 2^10)를 나타냅니다. 65,536은 64 X 1,024와 동일하므로 이 제한을 '64K 참조 제한'이라고 부릅니다.
▷ 64K 참조 제한 극복
- 멀티덱스라는 앱 구성을 사용 설정하여 이 제한을 극복하는 방법을 설명합니다. 멀티덱스를 사용하면 앱에서 다중 DEX 파일을 빌드하고 읽을 수 있습니다.
Mutidex 적용하기
▷ Android 5.0 미만인 경우
- defalultConfig에 mutiDexEnabled를 true로 지정
- dependencies에 'androidx.multidex:multidex:{LatestVersion}' 추가
android {
defaultConfig {
...
minSdkVersion 15
targetSdkVersion 33
multiDexEnabled true
}
...
}
dependencies {
implementation "androidx.multidex:multidex:2.0.1"
}
▷ Android 5.0 이상인 경우
- minSdkVersion이 21 이상으로 설정되면 멀티덱스가 기본적으로 사용 설정되며 멀티덱스 라이브러리가 필요하지 않다.
Reference
https://developer.android.com/studio/build/multidex?hl=ko#groovy
'Android' 카테고리의 다른 글
build.gradle에서 현재 flavor 찾기 (0) | 2024.04.09 |
---|---|
Android - FileProvider (0) | 2023.09.12 |
Android - Keystore 생성 및 앱 서명하기 (0) | 2023.04.19 |
Android - API Key 숨기기 (local.properties 활용) (0) | 2023.04.14 |
Android - Kakao 키 해시(Key Hash) 등록 방법 (0) | 2023.02.15 |