ㅁ 개요
O 프로그램 소개
- 이번 글은 이전글(플러터 앱개발 환경설정부터 앱출시까지 빠르게 해보고 전체과정 이해하기 - 3.안드로이드 앱 아이콘 및 이름 변경하기)에 이은 8번째 글로 안드로이드 앱에 디지털 서명하는 방법에 대하여 알아 보겠습니다.
O 완성된 프로그램 실행 화면
1. KeyStore 파일 만들기(개인키(서명키) 생성)
아래와 같은 명령으로 키길이가 2048인 RSA암호화 알고리즘으로 keystore 파일(앱 서명키, key_20230529_happywatch)을 생성합니다.
2. 앱이 KeyStore파일을 참조하도록 설정하기
아래와 같이 android > keystore 폴더를 만들어 주시고,
1) 그 아래에 위에서 만든 키 스토어 파일(key_20230529_happywatch)을 넣어 줍니다.
2) 그 다음 keystore.password 파일을 만들고, 여기에 key_20230529_happywatch 파일을 만들때 사용한 패스워드를 넣어 줍니다.
3) 프로젝트 폴더 > android 폴더로 이동 후
4) .gitignore 파일의 맨 아래에 '/keystore'를 넣어 줍니다.
프로젝트명(flutter_test_1) > android > .gitignore <-- 이 파일 수정
3. Gradle에서 서명 구성하기
앱에 서명을 구성하기(넣기) 위하여 아래와 같이 코드를 넣어줍니다.
ㅁ 세부 내용
O 주요 내용
KeyStore 파일은 개발자의 개인 키를 저장하고, 앱의 무결성(변조여부 확인)과 신원을 보장하기 위해 사용되는 중요한 파일입니다.
한번 만들고 나면 향후 해당앱의 업데이트 시 계속 이 파일을 사용해야 하므로 반드시 백업을 해두시기 바랍니다.
(예: A, B 2개의 앱을 배포시 A에 대한 KeyStore 파일과 B에 대한 KeyStore 파일을 각 각 만들어도 되고 KeyStore 하나로 같이 사용해도됩니다. 다만, A 앱과 B 앱은 각각 독립적인 앱으로 간주되므로 개별적인 KeyStore 파일을 생성하여 사용하는 것이 좋습니다. 단, A앱의 향후 기능 추가시 업데이트를 하는 경우 기존의 KeyStore를 사용해야 합니다.)
아래와 같이 keytool.exe를 사용할 수 있도록 환경변수를 설정해 줍니다.
안드로이드스튜디오가 설치된 경로에 존재
(C:\Program Files\Android\Android Studio\jbr\bin\keytool.exe)
아래와 같은 명령으로 키길이가 2048인 RSA암호화 알고리즘으로 keystore 파일(앱 서명키, key_20230529_happywatch)을 생성합니다.
>keytool -genkey -v -keystore c:/Users/SEC/key_20230529_happywatch -keyalg RSA -keysize 2048 -validity 10000 -alias key
2. 앱이 KeyStore파일을 참조하도록 설정하기
아래와 같이 android > keystore 폴더를 만들어 주시고,
1) 그 아래에 위에서 만든 키 스토어 파일(key_20230529_happywatch)을 넣어 줍니다.
2) 그 다음 keystore.password 파일을 만들고, 여기시 key_20230529_happywatch 파일을 만들때 사용한 패스워드를 넣어 줍니다.
3) 프로젝트 폴더 > android 폴더로 이동 후
4) .gitignore 파일의 맨 아래에 '/keystore'를 넣어 줍니다.
프로젝트명(flutter_test_1) > android > .gitignore <-- 이 파일 수정
3. Gradle에서 서명 구성하기
앱에 서명을 구성하기(넣기) 위하여 아래와 같이 코드를 넣어줍니다.
(위치 : 프로젝트명 > android > app > build.gradle 파일의 signingConfigs와 buildTypes 수정)
ㅁ 정리
O 우리가 배운 내용
> 1. KeyStore 파일 만들기(개인키(서명키) 생성)
>keytool -genkey -v -keystore c:/Users/SEC/key_20230529_happywatch -keyalg RSA -keysize 2048 -validity 10000 -alias key
android > keystore 폴더를 만들고
1) 그 아래에 키 스토어 파일(key_20230529_happywatch)을 넣고
2) keystore.password 파일을 만들고, 여기시 key_20230529_happywatch 파일을 만들때 사용한 패스워드를 넣어 줌
3) 프로젝트 폴더 > android 폴더로 이동 후
4) .gitignore 파일의 맨 아래에 '/keystore'를 넣어 줌
> 3. Gradle에서 서명 구성하기
프로젝트명 > android > app > build.gradle 파일의 signingConfigs와 buildTypes 수정
오늘은 여기까지이며, 댓글과 하트는 제가 이글을 지속할 수 있게 해주는 힘이 됩니다.
위의 내용이 유익하셨다면, 댓글과 하트 부탁드립니다.
감사합니다.