[android] App Bundle의 크기 최적화 방법

안드로이드 앱을 개발하다 보면 App Bundle의 크기를 최적화하는 것이 중요합니다. App Bundle은 사용자 장치에 필요한 리소스만을 포함하여 앱 크기를 줄여주는 동시에 다운로드 시간을 단축해줍니다. 이를 통해 사용자 경험을 향상시키고 데이터 사용량을 줄일 수 있습니다.

1. 리소스 최적화

앱에서 사용하지 않는 리소스를 제거하여 App Bundle의 크기를 줄일 수 있습니다. ProGuard나 R8과 같은 도구를 사용하여 불필요한 코드를 제거하고, 이미지 리소스를 압축하고 해상도에 맞게 최적화할 수 있습니다.

예시:

android {
    buildTypes {
        release {
            shrinkResources true
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
}

2. 다이나믹 기능 모듈 사용

App Bundle을 사용하면 다이나믹 기능 모듈을 통해 앱의 기능을 분리할 수 있습니다. 사용자가 필요로 하는 기능만 다운로드하여 설치하므로 앱의 초기 다운로드 크기를 줄일 수 있습니다.

예시:

implementation 'com.google.android.play:core:1.8.0'

3. 베이스 모듈 분리

베이스 모듈을 사용하여 레거시 장치 및 구버전의 안드로이드 시스템을 위한 최소한의 APK 크기를 유지할 수 있습니다. 이를 통해 지원되는 장치 범위를 확대하고 APK 크기를 줄일 수 있습니다.

예시:

android {
    dynamicFeatures = [":feature1", ":feature2"]
    baseFeature true
}

App Bundle의 크기 최적화는 사용자 경험을 향상시키는 중요한 단계입니다. 이러한 최적화 작업을 통해 사용자는 더 적은 데이터를 사용하면서 더 빠르게 앱을 다운로드하고 사용할 수 있게 됩니다.

참고 자료