Android App Bundle(.aab)은 2018년에 도입되고 2021년 8월에 신규 Google Play 업로드의 필수 형식이 된 Google의 최신 Android 배포 형식입니다. 스토어 배포에서 기존 APK 형식을 대체합니다. 핵심 이점: Google Play는 AAB를 사용하여 설치별 기기 최적화 APK를 생성합니다 — 각 사용자는 자신의 기기에 필요한 리소스, 코드, 언어 에셋만 다운로드하므로 설치 용량이 크게 줄어듭니다.
AAB가 중요한 이유
- 더 작은 설치 용량: 범용 APK 대비 15-50% 감소. 여러 언어나 기기 변형 에셋이 많은 앱에서 이점이 가장 큽니다.
- 느린 연결에서 더 빠른 다운로드: 설치 용량이 이동통신사 네트워크 마찰 임계값 아래로 줄어들면 신흥 시장 설치 완료율이 실질적으로 증가합니다.
- 모듈식 배포: 앱이 기능을 초기에 모두 다운로드하는 대신 온디맨드로 다운로드하는 모듈로 분리할 수 있습니다. 초기 설치 용량을 더욱 줄입니다.
- 에셋 팩: 대용량 에셋(HD 텍스처, 비디오 콘텐츠, ML 모델)을 실제 사용할 때만 다운로드되도록 별도로 배송할 수 있습니다.
마이그레이션: Play 스토어의 기존 앱은 2023년 말까지 AAB로 마이그레이션해야 했습니다. 신규 앱은 2021년 8월부터 AAB를 사용해야 합니다. APK는 내부적으로 여전히 사용됩니다 — Google Play가 업로드된 AAB에서 동적으로 생성하지만, 더 이상 직접 빌드하거나 업로드하지 않습니다.
Google Play 외부: AAB는 직접 설치할 수 없습니다. 직접 배포(기업 앱, 대체 앱 스토어, 사이드로딩)의 경우 개발자는 여전히 APK가 필요합니다 — `bundletool`을 사용하여 AAB에서 생성하세요. F-Droid, Amazon Appstore, Huawei AppGallery, Samsung Galaxy Store 모두 여전히 APK를 허용합니다(일부는 AAB도 수용하기 시작했습니다).
AAB vs APK
| AAB (.aab) | APK (.apk) | |
|---|---|---|
| Google Play 업로드 | 필수(2021년 8월 이후 신규 앱) | 더 이상 허용 안 됨 |
| 설치 용량 | 15-50% 더 작음(기기 최적화) | 범용 — 더 큼 |
| 직접 설치/사이드로드 | 직접 설치 불가 | 가능 |
| 대체 스토어(Amazon, F-Droid) | 일부 수용 시작 | 표준 |
Google Play는 설치 시 AAB에서 기기 최적화 APK를 생성합니다. 사이드로딩이나 대체 스토어를 위해서는 여전히 bundletool을 통해 APK를 생성해야 합니다.