다양한 해상도의 앱 아이콘을 모두 만들어야 한다.
위 사이트에서 1024x1024 사이즈의 이미지로 다양한 사이즈의 아이콘을 만들 수 있다.
generate 버튼을 누르면 zip 파일이 나온다.
압축을 풀면 다양한 크기의 이미지가 들어가있음을 알 수 있다.
프로젝트에 적용하기 위해.
- android/app/src/main/res/mipmap-* 에 해당하는 폴더를 모두 지우자
그리고 압축 푼 결과물을 다시 android/app/src/main/res에 복사한다.
아이콘이 잘 적용되었다.
앱 이름을 바꾸기 위해서
- android/app/src/main/res/AndroidMenifest.xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.actumn.stickynotes.sticky_notes">
<application
android:label="(앱이름 수정)"
android:icon="@mipmap/ic_launcher">
<activity
label을 수정하면 된다.
스토어에 배포할 때 필요한 서명키
서명을 통해 앱 위조를 방지한다.
android studio에서 만들 수 있다.
프로젝트 우클릭 > Flutter > Open Android modules in Android Studio
안드로이드 모듈을 처음 열었다면 프로젝트 불러오기까지 시간이 조금 걸린다.
상단에서 Build > Generate Signed Bundle / APK 를 선택.
App Bundle을 선택하고
Create New 버튼을 눌러 Key store를 만들어준다. Key store는 서명에 필요한 키를 저장하는 파일이다.
경로가 중요한데, 적당히 넣어준다.
패스워드를 적당히 입력하고,
Key 정보를 입력한다.
Alias는 Key 이름이다. 원하는 걸 넣자.
Password는 Key의 password다. 적당히 입력하자.
Validity 25년은 그대로 둔다.
마지막으로 First and Last Name에 이름을 입력하고
OK를 눌러 Key store파일을 만들어준다.
key 생성이 끝나면, release 배포에 적용하게끔 build 스크립트를 수정한다. Next > release 선택 > Finish으로 app bundle을 만들고 난 후에 프로젝트창에서 보기 방식을 project로 변경한다.
2번째 android 폴더를 우클릭한 후 New > File.
- key.properties
storeFile=/home/actumn/certificate/androidhuman.jks
storePassword={your_store_password}
keyAlias=android
keyPassword={your_key_password}
다음은 빌드할때 서명정보를 사용하도록 build 스크립트를 수정한다.
- app/build.gradle
def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties');
if (keystorePropertiesFile.exists()) {
keystoreProperties.load(new FileInputStream(keystorePropertiesFile));
}
// ... apply plugin: 'com.android.application'
// func android { ...
signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
storePassword keystoreProperties['storePassword']
}
}
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig signingConfigs.release
}
}
}
이것으로 빌드 스크립트 수정이 끝.
이제 android 모듈을 닫고 flutter project로 돌아와서, terminal에서 다음 명령어 입력
$ flutter build appbundle
이제 google play에 배포하자.
http://play.google.com/console (계정 필요, $25)
친절한 UX가 [앱 만들기] 버튼으로 안내한다.
이름 입력, 언어 설정, 앱, 무료 선택. 그리고 개발자 프로그램 정책과 미국 수출 법규에 체크한다.
그리고 앱만들기 클릭
앱 대시보드 화면에서 좌측 "프로덕션" 선택
"새 버젼 만들기"를 선택
Play 앱 서명 - 계속을 눌러서 구글 플레이에서 앱 서명 관리할 수 있도록 한다.
그리고 App bundle을 업로드한다.
경로 : {projectRoot}/build/app/output/bundle/release/app-bundle.aab
업로드가 완료되면 출시명을 입력한다.
출시명은 구글플레이 내부에서 각 버젼을 구분할때 사용하는 이름. 보통 버젼을 넣는다.
출시노트는 사용자에게 보이는 항목이다. 언어에 맞게 번역된 내용을 보여줄 수 있다.
저장 버튼을 누르면 업로드한 빌드가 저장이 되고 이후 배포할때 사용할 수 있다.
앱을 배포하려면 앱 스크린샷이나 설명, 프로모션 문구 등 앱 홍보에 사용할 수 있는 것들도 준비해야하지만,
필수 항목들을 점검해보자.
좌측 최하단 앱 콘텐츠 선택.
1. 개인정보 처리 방침
개인정보처리방침 사이트 주소를 넣어주자.
2. 광고
광고가 들어있으니 '예'를 누른다.
다른 옵션은 도움말 보고 참조해서 넣어주자.
이제 버젼 검토하고 출시한다.