위의 keystore는 말그대로 debug용이며, release모드에서 사용할 keystore를 새로 만들어야 한다.
새로운 keystore 만드는 방법
android studio에서 프로젝트이름/android 폴더를 연다.
build → Generate Signed Bundle or APK → create new… 클릭
빈칸을 다 작성하고, password, alias, key password는 어딘가 적어놓아야 한다.
key store path는 저장될 keystore의 경로를 의미한다.
Certificate ex)
first and Last Name : jinkyeong
Organization Unit: wepinLab
Organization: wepinLab
City or Locality: seoul
State or Province: dongjak-gu
Country Code: 082
새로 만든 키스토어를 release모드일때 사용하는 방법
...
MYAPP_RELEASE_STORE_FILE=키스토어이름
MYAPP_RELEASE_KEY_ALIAS=키스토어 alias이름
MYAPP_RELEASE_STORE_PASSWORD=비밀번호
MYAPP_RELEASE_KEY_PASSWORD=key 비밀번호
signingConfigs {
debug {
...
}
release {
if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) {
storeFile file(MYAPP_RELEASE_STORE_FILE)
storePassword MYAPP_RELEASE_STORE_PASSWORD
keyAlias MYAPP_RELEASE_KEY_ALIAS
keyPassword MYAPP_RELEASE_KEY_PASSWORD
}
}
}
buildTypes {
debug {
signingConfig signingConfigs.debug
}
release {
// Caution! In production, you need to generate your own keystore file.
// see <https://reactnative.dev/docs/signed-apk-android>.
signingConfig signingConfigs.release
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
}
}
<aside> 💡 $ react-native run-android --mode=release
파일은 프로젝트/andorid/app/build/outputs/apk/release 폴더에 있을것이다.
</aside>
이때… 빌드가 안되는 사람 주목
앱 심사에 올리기 위해 .aab를 추출한다면 그대로 password, alias, key password 적고 진행하면 됨.
그러면 아마도? 카카오 로그인이 안될거다. 카카오 디벨로퍼 사이트에 내 안드로이드 앱에 관련된 정보를 적어야 한다.
플랫폼 > 수정 클릭
여기서 패키지명, 키 해시를 등록해야한다.