Android App Bundle 적용

heunghan·2020년 5월 28일
0

Build App Bundle - Gradle
Build App Bundle - Android Studio GUI
생성된 .aab 이름 변경

App Bundle?

Android App Bundle은 모든 앱의 컴파일된 코드와 리소스를 포함하지만 APK 생성 및 Google Play 서명을 보류하는 새로운 업로드 포맷입니다.

Android Studio 3.2 이상에서 Android App Bundle을 이용하여 효율적으로 앱을 빌드하고 출시할 수 있다. 코드, 리소스 수정없이 앱이 다이어트가 된다.

Build App Bundle - Gradle

Gradle 명령어는 bundle{Variant} 형태이다.

  • Debug를 생성할 경우 bundleDebug
  • Release를 생성할 경우 bundleRelease

Command line에서는 아래처럼 작성해서 실행하면된다.

./gradlew bundle{Variant}

Run/Debug Config

Android Studi의 Run/Debug Configurations 에 등록하여 사용하는 것도 편리한 방법 중 하나다. (현재 주로 사용중인 방법)
Configurations
Run/Debug Configurations 에 등록하면 2번의 클릭으로 aab를 생성할 수 있다.

Build App Bundle - Android Studio GUI

기존 apk 파일 생성과 크게 다른 점은 없으며 Signed apk 를 생성하는 과정속에서 이미 App Bundle을 생성하는 방법을 확인했을 것이다.

Android Stuido 3.2 이상에서 Build > Generate Signed Bundle / APK...를 누르면 Android App Bundle 과 APK 2가지 중 하나를 선택할 수 있는 화면이 나온다.
Generate Signed Bundle or APK

Android App Bundle로 생성을 유도하기 위해 친절히 Android App Bundle의 장점도 요약되어 명시되어 있다.
Android App Bundle을 선택하고 Next를 누른다.

keystore
Key store를 입력하는 화면이 나오고 내용을 채운 뒤 Next를 누른다.

Build Variants
생성하려는 목적의 Build Variants를 선택한 뒤 Finish를 누르면 된다.

completed
그러면 로딩이 진행되고 완료 알림을 받으면 .aab 파일을 확인할 수 있다.

생성된 .aab 이름 변경

아무런 설정하지 않으면 app-{variant}.aab 형태로 파일이 생성된다.

기존에 build.gradle 에서 outputFileName 설정하여 apk이름을 변경했다면 aab는 setProperty("archivesBaseName", "MyAppName") 를 사용한다.

build.gradle(app)

android {
  buildConfig {
    setProperty("archivesBaseName", "MyAppName-v${versionName}(${versionCode})")
  }
}

위와 같이 설정하고 app bundle을 생성하면 app/build/outputs/bundle/{variant} 경로에 MyAppName-v1.0(1)-{variant}.aab 형태로 .aab 파일이 생성된 것을 확인할 수 있습니다.

References

Android App Bundle

Developers Documentation - About Android App Bundles

Build an app bundle with gradle

Stackoverflow - How to change the generated filename for App Bundles with Gradle?

profile
Digital Nomad를 꿈꾸는 Android Engineer

0개의 댓글