notes
Android 배포 가이드
Android 앱 배포 절차·서명·스토어 등록 단계별 가이드.
0. 사전 작업
1. 구글 개발자 계정 가입
- 앱 배포를 위해서는 구글 개발자 계정이 필요합니다.
2. keystore 생성
- 처음 한번만 진행하면 됩니다.
- 다음 코드를 터미널에 입력합니다. (폴더 위치는 상관없습니다.)
sudo keytool -genkey -v -keystore my-upload-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000
- 터미널에 나오는 항목들을 입력합니다.
- password 값은 반드시 기억해야합니다.
- 국가코드는 82로 지정합니다.
- 나머지 정보는 어떠한 값을 입력해도 상관없으므로, 엔터를 치고 넘어갑니다.
- CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=82가 맞습니까?
- [아니오] : y
android/gradle.propertities에 코드를 추가합니다.*****에는 keystore 비밀번호 값을 입력합니다.
MYAPP_UPLOAD_STORE_FILE=my-upload-key.keystore
MYAPP_UPLOAD_KEY_ALIAS=my-key-alias
MYAPP_UPLOAD_STORE_PASSWORD=*****
MYAPP_UPLOAD_KEY_PASSWORD=*****
3. Android Studio 패키지명(Package Name) 변경
- 패키지명 변경이 필요하지 않은 경우에는 진행하지 않아도 됩니다.
1. Android Studio 실행 → Open 클릭 → 프로젝트 내의 android 폴더 선택→ Open 클릭
- Android Navigator →
톱니바퀴 아이콘클릭 →Tree Appearance→Compact Middle Packages클릭(체크 해제)
- 변경을 원하는 디렉터리 우클릭 →
Refactor→Rename클릭
in Whole Project클릭 → 변경하고 싶은 패키지 명을 입력 →Scope: All Places 선택→
Refactor클릭
프로젝트 이름클릭 → Android Studio 패키지명 변경 확인
build.gradle의 applicationId 검색 → 변경된 패키지 명으로 아래와 같이 변경
4. 코드 추가
android/app/build.gradle의 signingConfigs 부분에 아래 코드를 추가합니다.
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
}
}
}
...
1. Android Bundle 생성
1. keystore 등록
- 최초로 생성한 keystore 파일만을 이용해야 합니다.
- 파일을 분실하는 경우, 구글 플레이스토어에 연락하여 새로 key를 발급받는 과정을 진행해야 합니다.
my-upload-key.keystore파일을android/app으로 이동시킵니다.
2. AppVersion 수정
- AppVersion 수정과 AAB 생성은 매번 배포마다 진행해야 합니다.
android/app/build.gradle에서 다음 정보를 수정합니다.versionCode: 1을 더해 정수형으로 맞춰줍니다.versionName: 일반적으로는 semetic versioning 규칙을 따릅니다.- versionName은 codePush가 적용되는 targetVersion과 연관이 있습니다.
package.json에서 다음 정보를 수정합니다.version: 이전 단계에서 설정한 versionName과 같은 값을 기입합니다.
3. AAB 생성
- Android Studio 실행 →
Open클릭 → 프로젝트 내의android폴더 선택→Open클릭
Build클릭 →Generate Signed Bundle / APK..클릭
Android App Bundle클릭 →Next클릭
- 아래의 정보를 입력 후
Next버튼을 클릭합니다. Key store path: my-upload-key.keystore의 저장 경로Key store password: keystore 생성 시 비밀번호Key alias: my-key-aliasKey password: keystore 생성 시 비밀번호- Remember passwords는 절대 체크하면 안됩니다. (오류가 발생할 수 있습니다.)
[참고] 견적주세요 어플의 Key store password & Key password : 100aksekdnsfhem
release클릭 →Finish클릭
android/app/release에 app-release.aab 파일이 정상적으로 생성되었는지 확인합니다.
2. PlayStore 등록
- 이후 추가할 예정입니다.
3. PlayStore 앱 업데이트
- 해당되는 앱을 클릭합니다.
- 출시 →
프로덕션클릭 →새 버전 만들기클릭
- App Bundle →
업로드클릭 →app-release.aab업로드 - [주의] App Bundle에 업로드 후 페이지를 이탈하면 {versionCode} 버전 코드는 이미 사용하였습니다. 라는 에러를 만나게 됩니다.
- 이 경우에는, versionCode를 변경한 후 다시 aab 파일을 생성해야 합니다.
버전 세부정보를 수정 후,버전 검토클릭
- 변경 내용 확인 후,
프로덕션 트랙으로 출시 시작클릭 →출시클릭