구글 PlayStore에 게시해 둔 앱을 업그레이드 할 때 고려 사항을 정리해 본다.
debug mode ⇒ release model 다시 빌드한다.
cd android
./gradlew bundleRelease
./gradew assembleRelease
cd ..
릴리즈 모드에서 변경해야 할 변수들을 수정한다.
예를 들면, 광고 ID 변경 (테스트ID -> 실제 ID값)
필요에 따라, code signing keystore 를 다시 점검 한다.
기존 앱과 변경된 앱의 keystore 파일과 패스워드는 동일하도록 유지해 준다.
android/app/build.gradle 파일에서 version 정보를 변경한다.
play.google.com 에서 모바일앱 업데이트 버전의 번들 (app.aab)을 업로드 한다.
메뉴 > 출시 관리 > 앱버전
앱스토어의 에러 및 권장 사항을 반영하여, 위 과정을 다시 진행한다.
주목할 만한 사항을 몇가지 점검해 본다.
필자만 그렇게 생각하는지 모르겠으나, play store의 앱 업그레이드, 출시 국가 변경 등 설정값들은 의외의 메뉴에 포함이 되어 있다.
한마디로 직관적이지 않다. (아마도 메뉴의 번역이 이상하게 되어 있는듯 한다.)
모바일앱의 버전 업데이트는 왼쪽 메인메뉴 > 출시관리 > 앱버전 에서 진행 할 수 있다.
앱버전 메뉴에 들어가면, 각 트랙별로 모바일 앱을 관리할 수 있다. 본문에서는 프로덕션 업데이트를 진행하므로, 오른쪽에 있는 관리 버튼을 눌러서 메뉴에 진입하도록 한다. 다음으로 출력되는 화면에서 오른쪽 상단에 보면 "새버전 출시하기" 버튼이 보인다. 이 버튼을 눌러서 진행한다.
다음화면에 번들 파일이나 APK 파일을 드래그하여 업로드를 진행할 수 있다.
흥미로운 점은, 앱을 업데이트 하면서, 출시 국가 및 앱등록정보, 설명 등을 업데이트 할 줄 알았으나, 별도의 메뉴에서 진행을 해야 한다.
앱등록 정보는 왼쪽 세로로 배열되어 있는 메인 메뉴 중 또다른 메뉴에 위치한다. 왼쪽 메인메뉴 > 앱정보 > 스토어 등록정보로 이동해 보면, 제목, 설명, 자세한 설명 등을 업데이트 할 수 있다. 출시 국가의 설정은 의외의 메뉴에 위치하는데, 그 위치는 "메인메뉴> 앱정보 > 가격 및 배포 "으로 이동하면 찾을 수 있다.
해당 메뉴에 들어가면, "국가" 영역의 우측에 "국가관리" 버튼을 눌러서 출시 국가를 선택할 수 있으니, 참고하기 바란다.
실제로 구글 Playstore에 앱을 업로드 하면서 이것저거 수정하다 보면, 아래와 같이 앱의 버전이 이미 업로드 되어 있으므로 앱 버전을 수정하라는 가이드를 보게 된다.
앱버전 수정 가이드에 맞추어 앱버전을 수정해 주자.
앱버전은 android/app/build.gradle 에서 versionCode 와 versionName 변경 해 주어야 한다.
android { ... defaultConfig { versionCode 1 versionName "1.0" ... } ... } |
App Version update를 수행하기 전과 수행 후의 Apk (or Bundle)의 크기 변경이 많으면, 경고문구가 뜬다. 필자의 경우, 미디어 파일을 다수 포함하게 되어 당연한 결과이나, 왠지 수정하지 않으면 앱점검 시간이 길어질것 같아서, 최적화를 진행하기로 하였다.
App 최적화의 다양한 방법이 있으나, 가장 쉽게 접근할 수 있는 방법을 제시해 본다.
anroid/app/bundle.gradle 파일에서 속성값을 변경하는 방법으로써, minifyEnable 과 shrinkResource 속성값을 true 변경해 주는 방법이다.
ㅇminifyEnable true
ㅇshrinkResources true
아래와 같이 android/app/build.gradle 파일의 buildTypes > release 항목에서 2개 속성값을 true로 변경 해준다.
필자의 경우, bundle 파일 자체는 40Mb 에서 17Mb 로 축약되는 효과를 보았으며, playstore에 업로드 후 최종 apk 파일 사이즈는 10Mb 가 되었다.
초간단 안드로이드 아이콘 (Launch Icon) 세팅하기 (2) | 2020.03.27 |
---|---|
React-native-sound 가 Release build에서 동작하지 않을 때 (1) | 2020.03.11 |
[React Native Vector Icons] 리액트 네이티브 벡터 아이콘을 달아 보자 (0) | 2020.03.09 |
Node Module을 React Native 에서 사용해 보자 (0) | 2020.03.09 |
React JS 입문 - 10만에 보는 리액트 (0) | 2020.03.09 |
댓글 영역