본문 바로가기
IT/도구

Android 앱 서명 JarSigner / ApkSigner (feat. Zipalign)

by TechTonic 2022. 6. 23.
반응형

앱을 만든 후 폰에 설치 및 스토어에 배포하기 위해서는 서명 작업이 필요하다.
당연 앱 빌드 시 IDE (Android Studio 등..) 에서 자동으로 해주겠지만.. 수동으로 서명하는 방법을 알아보자.

Google signing (JarSigner/ApkSigner)

1. Android 앱 서명 간략 설명

Google 에서 APK 앱에 서명 시 ApkSigner (v2 서명)을 권장하고 있어 아래 내용으로 이해하고 있으면 되겠다.

APK 파일은 ApkSigner 로 서명 할 것.
AAB (Android App Bundle) 파일은 JarSigner 로 서명 할 것.

 

2. Android 앱 서명 준비물

apksigner

 - 다운로드 : Andorid Studio 다운로드

 - 위치 : ANDROID_SDK_HOME 에 위치

 - 예: C:\Users\Sarin\AppData\Local\Android\Sdk\build-tools\29.0.2\apksigner.bat


jarsigner

 - 다운로드 : jdk 다운로드

 - 위치 : JDK_HOME 에 위치

 - 예: C:\Program Files\Java\jdk1.8.0_301\bin\jarsigner.exe


zipalign

 - 다운로드 : Andorid Studio 다운로드

 - 위치 : ANDROID_SDK_HOME 에 위치

 - 예: C:\Users\Sarin\AppData\Local\Android\Sdk\build-tools\29.0.2\zipalign.exe


key (jks, keyStore..)

 - 위치 : 생성 위치

 

3. Android 앱 서명 방법

Apksigner 서명 방법

zipalign 정렬이 완료된 파일로 실행할 것. (apksigner 서명 후 zipalign을 하면 서명이 무효화 된다.)

 

apksigner.bat sign --ks <key 경로> --ks-key-alias <key 식별자> --ks-pass pass:<key 비밀번호> --v1-signing-enabled true --next-signer --v2-signing-enabled true --out <생성할APK파일> <원본APK파일>


Jarsigner 서명 방법

APK파일은 jarsigner 서명 후 zipalign 을 해줘야했지만 AAB 파일은 zipalign 생략해도 된다

 

jarsigner.exe -verbose -sigalg SHA256withRSA -digestalg SHA-256 -keystore <key 경로> -storepass <key 비밀번호> <원본AAB파일> <key 식별자>

주의.

서명 주의 사항

 

Zipalign 정렬 방법

zipalign.exe -p -f -v 4 <원본APK파일> <생성할APK파일>

반응형

댓글