안녕하세요. 메로나입니다.
오늘은 Android App Bundle에 관해 공부하겠습니다.
Android App Bundle이란 무엇인가?
- Google Play에서 앱을 더 효율적으로 배포하기 위해 도입된 새로운 파일 형식입니다.
- 기존의 APK(Android Package Kit)를 대체하며, 앱 크기를 줄이고, 다양한 기기에 맞는 최적화된 APK를 자동으로 배포할 수 있도록 설계되었습니다.
- 확장자: .aab
- 설치방식: App Bundle은 Google Play를 통해 최종 사용자 기기에 설치되는 APK로 변환됩니다. 직접 설치는 불가능합니다.
Android App Bundle의 특징?
- Dynamic Delivery: Google Play는 사용자의 기기 사양(화면 크기, CPU 아키텍처, 언어 등)을 기반으로 필요한 리소스만 포함된 APK를 생성합니다.
- 구성 요소 기반 패키징: App Bundle은 모듈화 된 구조로, 각 모듈은 특정 기능이나 리소스에 해당합니다.
- Dynamic Feature Delivery: 필요한 기능만 설치하는 방식으로 앱 크기를 줄이고, 사용자 경험을 개선할 수 있습니다.
Android App Bundle의 장점
- 앱 크기 감소: 앱 크기는 평균 15% ~ 20% 줄일 수 있습니다.
- 기기 최적화: 사용자의 기기에 필요한 리소스만 포함된 APK가 생성되므로, 불필요한 데이터가 제거됩니다.
- Dynamic Feature Delivery: 특정 기능을 온디맨드 방식으로 제공하여 초기 설치 크기를 최소화하고, 필요한 기능만 다운하도록 설정할 수 있습니다.
- Google Play Console 통합: Google Play Console에서 App Bundle을 업로드하면 다양한 기기에 최적화된 APK를 자동으로 생성하고 관리할 수 있습니다.
Android App Bundle의 단점
- Google Play 의존성: 다른 AppStore에서는 사용 불가합니다.(ex. Amazon AppStore)
- 직접 설치 불가: .aab 파일은 직접 설치할 수 없으면 Google Play를 통해서 배포만 할 수 있습니다.
- 추가 학습 필요: 기존 APK 방식과 다른 구조를 가지므로, 개발자는 App Bundle과 Dynamic Delivery에 대해 학습해야 합니다.
Android App Bundle 생성 과정
- App Bundle 생성
- Android Studio에서 Build -> Generate Signed Bundle / APK를 선택합니다.
- Android App Bundle을 선택하고 KeyStore 정보를 입력합니다.
- '.aab'파일이 생성됩니다.
- Google Play에 업로드
- Google Play Console에 로그인합니다.
- 앱의 App Release 메뉴로 이동합니다.
- 생성된 '.aab' 파일을 업로드합니다.
참고문헌
https://developer.android.com/guide/app-bundle?hl=ko
Android App Bundle 정보 | Android Developers
이 페이지는 Cloud Translation API를 통해 번역되었습니다. Android App Bundle 정보 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 중요: 2021년 8월부터 신규 앱은 Andro
developer.android.com
https://greedy0110.tistory.com/75
[Deploy] Android App Bundle 을 (늦었지만) 알아보자.
사이드 프로젝트가 배포를 앞두고 있습니다. (몇 달째 이 말을 하는지 모르겠지만...) 그래서 이제 배포를 하기 위해서 apk를 신나게 뽑고 있었습니다만 네, 앞으로 Google Play에 apk 배포 말고, App Bun
greedy0110.tistory.com
Android App Bundle을 공부하면서 앱 배포를 효율적으로 하는 방법을 배웠고, Dynamic Delivery를 왜 공부해야 하며, 알고 지나가야 하는지 알 것 같았습니다. Android App Bundle을 공부하면서 장점 중 앱 크기를 줄일 수 있는 것과 사용자 기기에 최적화된 리소스를 제공할 수 있다는 장점이 있다는 것도 알게 되었습니다.
'Android' 카테고리의 다른 글
| [Android] NDK(Native Development Kit) (0) | 2025.04.06 |
|---|---|
| [Android] Context (0) | 2025.04.06 |
| [Android] AOSP(Android Open Source Project) (0) | 2025.03.07 |
| [Android] 안드로이드 리다이렉션 처리 (0) | 2025.02.28 |
| [Android] 미디어 프로젝션(Media Projection) (0) | 2025.02.27 |