당신의 앱에 별다른 설정을 하지 않았다면 항상 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를 구분하며 빌드하자.
'Android (안드로이드)' 카테고리의 다른 글
[Android] 앱에서 TTS 사용해보기 (1) | 2024.12.21 |
---|---|
[Android] OSS Licenses / 라이선스란? / 앱에 라이선스 표시하기 / OSSLicensesPlugin (1) | 2024.12.20 |
[Android] 앱 버전 · Target SDK · 빌드 날짜 표시하기 / BuildConfig import 오류 해결 (3) | 2024.12.12 |
[Android] Android Version 종류 및 점유율 확인 / API LEVEL / Target SDK (1) | 2024.12.11 |
[Android] 안드로이드 스튜디오 단축키 정리 (Windows) / + 소소한 크롬 단축키 정리 (4) | 2024.12.10 |