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}

Android Studi의 Run/Debug 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가지 중 하나를 선택할 수 있는 화면이 나온다.

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


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


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


그러면 로딩이 진행되고 완료 알림을 받으면 .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개의 댓글