→ Android App Bundle은 앱의 모든 컴파일된 코드 및 리소스를 포함하며 APK 생성 및 서명을 Google Play에 맡기는 게시 형식입니다.
사용자가 앱을 다운 받을 시 앱의 다운로드 크기와 디스크 할당 크기 감소
사용자에게 필요한 기능 및 설정을 설치 중이 아닌 사용자가 요청할 때 제공
여러 개의 APK를 빌드하고 게시할 필요가 없어 효율적인 빌드 및 출시 관리
사용자의 기기 대신 APK 에 저장되는 압축되지 않은 기본 라이브러리를 사용하여 (Android 6.0 이상) 다운로드 크기, 디스크 할당 크기, 설치 시간 감소 → 각 사용자의 디바이스에 맞는 리소스와 구성품으로 구성된 APK 를 만들어 배포함으로써 사용자에게 다운로드의 시간을 줄여줌
[ AAB 파일 생성 방법 ]
1. 안드로이드 스튜디오 3.2 버전 이상에서 [Build] - [Generate Signed Bundle / APK...] 클릭
Generate Signed Bundle / APK.. 클릭
2. Android App Bundle 생성
3. key store path, key store password, key alias, key password 입력
-Key store path : <proj_root>/keystore.jks -Key alias : upload -Key password : <proj_root>/build.gradle 에 keystore_password 확인
4. Build Type: release
5. 지정해둔 폴더에 .aab 라고 확장자 명이 적힌 Android App Bundle 파일을 Google Play 에 배포
[ AAB TEST ]
: 기존의 .apk 확장자라면 단말기에 설치하고 테스트 할 수 있지만 .aab 는 아래와 같은 방법으로 테스트 해볼 수 있음
방법1) bundletool 명령줄 도구를 사용하여 로컬에서 테스트
: Android 스튜디오 및 Google Play에서 App Bundle을 빌드하고 이를 APK로 변환하는 데 사용하는 도구는 cmd에서 제공됩니다.
즉, cmd에서 이러한 도구를 호출하여 Android App Bundle에서 앱을 로컬로 빌드하고 배포할 수 있습니다.
Play App Signing (플레이 앱 서명) : Google 은 Play App Signing 을 통해 앱의 서명 키를 관리 및 보호하고 배포를 위해 APK 에 서명하는데 사용합니다. Play App Signing 은 app signing key와 upload key 두 가지를 사용합니다.
1) app signing key : 사용자 기기에 설치된 APK 에 서명하는데 사용되는 키. 앱의 전체 기간 동안 절대 변경되지 않음 2) upload key : Google Play App Signing 을 위해 업로드 하기 전에 App Bundle 또는 APK 에 서명하는데 사용하는 키
→ 개발자는 upload key 로 서명해서 Google Play 에 업로드하면 구글이 사용자에게 앱을 배포할 때에는 업로드키가 아닌 서명키로 다시 서명하여 앱을 배포하게 됨