Android (안드로이드)

[Android] release 모드 빌드하기 / Build Variants / Signing Configs

Oscar:) 2024. 12. 19. 18:00
728x90

 

 

 

당신의 앱에 별다른 설정을 하지 않았다면 항상 debug 모드로 빌드되고 있을 것이다.

앱을 release 모드로 빌드하는 방법을 알아본다.

 

 

 

 


 

 

 

✅ APK 빌드하기

 

APK를 빌드하는 최종 목적은 Signing Configs를 작성하기 위함이다.

그리고 Signing Configs를 작성하기 위해서는 Store Key 파일이 필요하다.

 

그렇기 때문에 APK를 만들고 시작해본다.

 

 

 

🎈 [Build] → [Generate Signed Bundle / APK...] 경로로 진입한다.

 

 

 

 

🎈 APK 를 선택해준다.

 

 

 

 

🎈 [Create new...] 를 눌러서 새로운 Key Store를 생성해준다.

 

 

 

 

🎈 빨간 체크 표시의 항목을 모두 작성해준다.

 

 

Key Store가 저장될 경로를 설정하고,

각종 비밀번호와 이름을 작성해주면 된다.

 

여기서 작성한 정보들은 기억하고 있어야 한다.

 

[OK] 를 누르고 입력한 정보를 확인한 뒤 [Next] 눌러주자.

 

 

 

🎈 release 선택 후 [Create] 해준다.

 

 

이제 APK 파일이 생성되었다.

 

하지만 다시 한 번 언급하자면 우리의 주 목적은 APK 파일이 아니다.

Signing Configs 를 작성하기 위한 Key Store 생성이었다는 것을 기억하자.

 

 

 

 

 

 

✅ Signing Configs 설정

 

🎈 [File] → [Project Structure] → [Modules] → [Signing Configs] 로 이동한다.

 

 

release 선택 후 APK를 만들 때 생성해주었던 Store File의 경로, 이름, 비밀번호 등을 작성해주자.

 

 

 

🎈Gradle 파일 확인

 

build.gradle.kts(:app)

 

위에서 입력했던 내용이 모두 작성되어 있는 것을 확인할 수 있다.

 

 

 

그리고 buildTypes를 다음과 같이 작성해준다.

 

build.gradle.kts(:app)

android {
  ...
  buildTypes {
    release {
      isMinifyEnabled = true
      isShrinkResources = true
      proguardFiles(
        getDefaultProguardFile("proguard-android-optimize.txt"),
        "proguard-rules.pro"
      )
      signingConfig = signingConfigs.getByName("release")
    }
    debug {
      applicationIdSuffix = ".debug"
      isMinifyEnabled = false
      proguardFiles(
        getDefaultProguardFile("proguard-android-optimize.txt"),
        "proguard-rules.pro"
      )
    }
  }
}

 

- release / debug 로 분류

- isMinifyEnabled : 사용하지 않는 코드 제거 및 코드 난독화

- isShrinkResources : 사용하지 않는 리소스 제거

- proguardFiles : Android에서 제공하는 기본 ProGuard 파일 지정

- signingConfig : release 빌드에 사용할 서명 구성을 지정

- applicationIdSuffix : 패키지명 마지막에 해당 이름 추가

 

 

 

 

 

 

✅ Build Variants 변경

 

🎈 좌측 탭에 다음과 같은 아이콘을 눌러준다.

안드로이드 스튜디오 버전에 따라 아이콘 모양은 다를 수 있다.

 

 

 

 

🎈 이제 Build Variants를 release로 변경해준다.

 

 

Run 하면 release 모드로 앱이 빌드된다.

 

 

 

 

 

 


 

 

 

 

 

사실 앱 출시를 해보기 전까지는 release 모드에 대해 알기 쉽지 않다.

이제부터라도 debug / release를 구분하며 빌드하자.

 

 

 

 

 

728x90