React-Native에서 Android aab(apk)파일 생성하는 방법 입니다.
순서
1. Keystore 생성하기.
2. 프로젝트에 생성한 Keystore 저장하기.
3. Gradle에 전역 변수 설정하기.
4. Gradle config에 signing release 설정 추가하기.
5. Release 파일 생성하기.
1. Keystore 생성하기
- your_key_name과 your_key_alias는 원하는 이름으로 작성합니다. 저는 여기서 동일한 이름으로 맞춥니다.
keytool -genkey -v -keystore your_key_name.keystore -alias your_key_alias -keyalg RSA -keysize 2048 -validity 10000
위 커맨드 입력 후 엔터를 누르면 문구 출력되면서 값을 입력하라 하는데 비밀번호는 까먹지 않도록 작성합니다.
키 저장소 비밀번호 입력:
새 비밀번호 다시 입력:
이름과 성을 입력하십시오.
[Unknown]: Hyunsoo
조직 단위 이름을 입력하십시오.
[Unknown]: BLUEPHONE
조직 이름을 입력하십시오.
[Unknown]:
구/군/시 이름을 입력하십시오?
[Unknown]: SEOUL
시/도 이름을 입력하십시오.
[Unknown]: SEOUL
이 조직의 두 자리 국가 코드를 입력하십시오.
[Unknown]: 82
CN=Hyunsoo, OU=BLUEPHONE, O=Unknown, L=SEOUL, ST=SEOUL, C=82이(가) 맞습니까?
[아니오]: Y
다 작성 완료 되면 your_key_name.keystore 파일이 생성됩니다.
2. 프로젝트에 생성한 Keystore 저장하기.
React Native 프로젝트 안의 android/app 안에 생성된 keystore 파일을 넣어줍니다.
3. Gradle에 전역 변수 설정하기.
android 폴더 안의 gradle.properties 파일에 아래의 코드를 입력해줍니다.
파일이름, alias 이름, 비밀번호를 입력해줍니다.
MYAPP_UPLOAD_STORE_FILE=my-upload-key.keystore
MYAPP_UPLOAD_KEY_ALIAS=my-key-alias
MYAPP_UPLOAD_STORE_PASSWORD=*****
MYAPP_UPLOAD_KEY_PASSWORD=*****
4. Gradle config에 signing release 설정 추가하기.
android/app/build.gradle 파일에서 해당 release를 추가합니다.
...
android {
...
defaultConfig { ... }
signingConfigs {
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
}
}
}
...
5. Release 파일 생성하기.
aab 파일을 생성합니다. apk 파일을 업로드 할 때는 간혹 에러가 발생하여 되도록이면 aab 파일을 생성하여 업로드를 합니다.
React Native 프로젝트 안에서 아래와 같이 커맨드 작성 후 실행합니다.
cd android
./gradlew bundleRelease
에러가 없으면 android/app/build/outputs/bundle/release 폴더에 aab 파일이 생성됩니다.
생성된 aab 파일을 플레이스토어 콘솔에 업로드 해주면 됩니다.
apk 파일을 생성할 경우에는 아래와 같이 입력하면 됩니다.
cd android
./gradlew app:assembleRelease
'APP > React-Native' 카테고리의 다른 글
[React-Native] Plugin with id 'maven' not found. 해결 방법 (0) | 2022.01.24 |
---|---|
[React-Native] React-native 캡처 방지 방법 (0) | 2022.01.23 |
[React-Native] ERESOLVE unable to resolve dependency tree 에러 발생 시 해결 방법 (0) | 2022.01.23 |
[React-Native] React-native Splash 화면 적용하기 (0) | 2022.01.23 |
[React-Native] failed to connect to development server using "adb reverse" 라는 에러 발생시 해결 방법. (0) | 2021.02.09 |
댓글