본문 바로가기
프레임워크/Flutter

[Flutter] 안드로이드 앱 서명 jks 파일 생성

by 연어바케트 2024. 5. 2.
반응형

구글 플레이 스토어에 앱을 게시하려면 서명키가 필요한데, 보통 업로드 키를 사용한다. 

서명되지 않는 앱의 경우에는 플레이 콘솔에 앱을 업로드 할 수 없으니, 이는 필수 사항이다. 

 

 

업로드 키 스토어 생성 방법

1. 맥OS 또는 리눅스

keytool -genkey -v -keystore ~/upload-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias upload

위와 같이 터미널창에 명령어를 쳐준다.


2. 인증서 포함 정보 입력

비밀번호를 입력한 후 아래와 같은 정보를 입력해야한다. 


정보 입력후 생성을 하면 인증서가 생성된다.

 

3. 키 스토어 설정

이제 안드로이드 폴더 하위에 upload-keystore.jks를 첨부한다. 

그리고  key.properties 파일을 생성한다. 

 

 

아래 값들을 key.properties에 입력한다. 

storePassword,keyPassword는 2번에서 키 스토어 생성시 사용한 비밀번호를 입력하면 된다. 

storePassword=
keyPassword=
keyAlias=upload
storeFile=../upload-keystore.jks

 

 

4. build.gradle 앱 서명 등록 

android > app > build.gradle 파일을 오픈한다. 
아래 코드를 사진과 같이 넣어 준다. 

def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
    keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}

 



build.gradle에서 스크롤을 내리면 아래와 같이 buildTypes부분이 나오는데 그 윗 부분에 아래 코드를 추가한다. 

signingConfigs {
    release {
        keyAlias keystoreProperties['keyAlias']
        keyPassword keystoreProperties['keyPassword']
        storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
        storePassword keystoreProperties['storePassword']
    }
}

 

 

buildTypes에 signingConfig signingConfigs.release를 변경해줘야한다. 

 

이제 빌드하면 끝!

 

 

마지막으로 keystore 관련 gitignore 추가!

# Androdi play console upload Key info
key.properties
**/*.keystore
**/*.jks

 

참고


 

Android 키 저장소 시스템  |  App quality  |  Android Developers

Android 키 저장소 시스템 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Android 키 저장소 시스템을 사용하면 암호화 키를 컨테이너에 저장하여 기기에서 키

developer.android.com

 

반응형

댓글