이번 포스트에서는 Gradle 빌드시에 Signing key
를 서명하도록 설정하는 방법을 정리하겠습니다.
Play store에 앱을 업로드하려면 Bundle 혹은 APK에 앱 서명을 해야합니다.
그래서 서명하기 위한 일반적인 방법으로는 [Build]-[Generate Signed Bundle / APK]에서 keystore 정보를 입력해주는 방법이 존재하지만 이 방법은 APK 생성할때마다 매번 입력해주어야 하므로 꽤 번거롭습니다.
또한, keystore에 대한 정보는 깃과 같은 외부 저장소에 올려서 노출되어서는 안되므로 주의해야 합니다.
그래서 이번 포스트에서는 Gradle의 sIgningConfings 설정을 통해 빌드시에 keystore로 안전하게 앱 서명을 하는 방법을 정리하겠습니다.
gradle.properties에 Signing key 정보 입력
Signing key에 대한 정보들은 보안상 반드시 외부에 노출되지 않도록 해야합니다.
그래서 안드로이드의 build.gradle에서 사용할 변수들은 gradle.properties
에 저장하고 불러올 수 있으므로 gradle.properties에 keystore에 대한 정보를 입력해주고 VCS에 올라가지 않도록 주의합니다.
build.gradle 설정
아래와 같이 gradle.properties에 입력해주었던 keystore 정보들을 signingConfigs에 저장하도록 설정합니다.
signingConfigs {
release {
keyAlias KEY_ALIAS
keyPassword KEY_PASSWORD
storeFile file(STORE_FILE)
storePassword STORE_PASSWORD
}
}
buildTypes release에 singingConfig을 등록해주면 release 빌드시에 keystore 정보를 보고 앱 서명을 진행합니다.
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release
}
}
전부 설정을 마치고 release 빌드를 진행하면 앱 서명이 완료되어 있는 것을 확인할 수 있습니다.