728x90
반응형
개발 완료 후 Google Play Store 출시를 위해, release용 인증서를 생성하고 확인함
1. /android/app 위치에서 아래 커맨드 실행
# location : [project]/android/app
$ keytool -genkeypair -v -storetype PKCS12 -keystore my-upload-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000
2. 아래 질문들에 답한 후, 마지막에 'y' 입력
3. 아래와 같이 [project]/android/app 위치에 my-upload-key.keystore 가 생성됨
4. gradle.properties 파일에 코드를 추가
# [project]/android/gradle.properties
MYAPP_UPLOAD_STORE_FILE=my-upload-key.keystore
MYAPP_UPLOAD_KEY_ALIAS=my-key-alias
MYAPP_UPLOAD_STORE_PASSWORD=***** # 인증서 생성 시 등록했던 비밀번호 입력
MYAPP_UPLOAD_KEY_PASSWORD=***** # 인증서 생성 시 등록했던 비밀번호 입력
5. build.gradle 파일에 debug 만 설정되어 있는데 release 도 추가
# [project]/android/app/build.gradle
...
android {
...
signingConfigs {
debug { ... }
release {
if (project.hasProperty('MYAPP_UPLOAD_STORE_FILE')) {
storeFile file(MYAPP_UPLOAD_STORE_FILE)
storePassword MYAPP_UPLOAD_STORE_PASSWORD
keyAlias MYAPP_UPLOAD_KEY_ALIAS
keyPassword MYAPP_UPLOAD_KEY_PASSWORD
}
}
}
buildTypes {
release {
...
signingConfig signingConfigs.release // 변경: .debug --> .release
}
}
}
...
6. 아래 커맨드를 실행하면 기존에 debug 용으로 사용했던 인증서 지문 및 release 용으로 등록한 인증서 지문을 확인 가능함
# location : [project]/android
$ ./gradlew signingReport
* reference : https://reactnative.dev/docs/signed-apk-android
7. 빌드 시 release 로 변경
- 변경하지 않을 시, 스토어에 업로드 할 때 '디버그 모드로 서명한 APK 또는 Android App Bundle을 업로드했습니다.' 경고가 발생함
...
android {
...
defaultConfig { ... }
signingConfigs {
release {
...
}
}
}
buildTypes {
release {
...
signingConfig signingConfigs.release // .release 로 변경
}
}
}
...
7. Google Play Store 등록을 위한, App Bundle 생성
# location : [project]/android
$ ./gradlew bundleRelease
- android/app/build/outputs/bundle/release 위치에 파일이 생성됨
728x90
반응형
'React Native > React Native_etc' 카테고리의 다른 글
[React Native - ios/android] Crawling 기능 구현 시 euc-kr to utf-8 convert (0) | 2022.05.19 |
---|---|
[React Native -android] Google Play Console 앱 서명 키 인증서 vs 업로드 키 인증서 & Firebase 연동 (0) | 2021.10.01 |
[React Native - android] .abb 추출하기 (0) | 2021.09.30 |
[React Native] release 버전에서 axios 사용 시 에러 발생 해결 (0) | 2021.09.15 |
[React Native] 오픈소스 라이선스 고지 방법 (0) | 2021.09.14 |