Flutter로 앱을 개발했습니다. 그렇다면 출시를 해야겠죠? 이 글은 Flutter로 개발한 앱을 Google Play 스토어에 출시하는 과정을 정리했습니다.
목차
1. 계정 생성
2. 앱 빌드하기
3. 앱 생성 및 등록정보
4. 내부 테스트
5. 비공개 테스트
6. 프로덕션 검수
1. 계정 생성
Google Play 개발자 계정 생성
- Google Play Console에 접속합니다.
- Google Play 개발자 계정 등록합니다.
- 계정 등록비는 25 달러 인데, 한 번만 결제하면 됩니다.
- 결제 후 본인 확인 및 계정 활성화 과정을 진행합니다.
본인 확인이 완료되면 이메일로 알림을 받는데요. 이 과정이 며칠 걸린다고 합니다.
본인 확인을 기다리면서 앱 빌드를 준비합니다.
2. 앱 빌드하기
키스토어 파일 생성
Google Play에 앱을 출시하려면 앱 서명(KeyStore)이 필요합니다.
터미널에서 아래 명령어를 실행해 키스토어 파일을 생성합니다.
keytool -genkey -v -keystore your-key-name.jks -keyalg RSA -keysize 2048 -validity 10000 -alias your-key-alias
your-key-name 과 your-key-alias 는 임의의 이름을 지어주시면 됩니다.
명령어를 실행하면 다음 항목들을 입력해야 합니다.
- Keystore Password: 원하는 비밀번호 입력해주세요.
- Alias: 위에 기재한 <your-key-alias> 을 입력해주세요.
- Name, Organization, Location: 이름, 부서, 조직, 위치 등 실제 정보를 입력해주세요.
키를 생성했다면 android/app/keystore/your-key-name.jks 경로로 옮겨주세요.
Key Properties 파일 생성
프로젝트의 android 디렉토리에 key.properties 파일을 생성하고 아래 내용을 입력합니다.
storePassword=<앞서 설정한 비밀번호>
keyPassword=<앞서 설정한 비밀번호>
keyAlias=<your-key-alias>
storeFile=keystore/<your-key-name>.jks
Gradle 파일에 서명 설정 추가
android/app/build.gradle 파일에 아래 코드처럼 서명 설정을 추가합니다.
// ... existing code ...
// 함수 추가
def keyStoreProperties = new Properties()
def keyStoreFile = rootProject.file("key.properties")
if (keyStoreFile.exists()) {
keyStoreProperties.load(new FileInputStream(keyStoreFile))
}
android {
namespace "com.example" // 프로젝트 도메인 이름으로 수정해주세요.
compileSdk flutter.compileSdkVersion
ndkVersion flutter.ndkVersion
// ... existing android config ...
// 설정 추가
signingConfigs {
release {
storeFile file(keyStoreProperties['storeFile'])
storePassword keyStoreProperties['storePassword']
keyAlias keyStoreProperties['keyAlias']
keyPassword keyStoreProperties['keyPassword']
}
}
buildTypes {
release {
signingConfig signingConfigs.release
}
}
}
// ... rest of the file ...
AAB 파일 생성
Google Play는 앱 번들(AAB) 형식을 요구하기 때문에 apk 가 아닌 aap 파일을 생성해야 합니다.
아래 명령어로 AAB 파일을 생성합니다.
flutter build appbundle --release
빌드가 완료되면 build/app/outputs/bundle/release/app-release.aab 경로에 파일이 생성됩니다.
3. 앱 생성 및 등록정보
이제 새 앱을 생성하고 스토어 등록정보를 작성하겠습니다.
새 앱 생성
- Google Play Console에 접속합니다.
- 홈 화면에서 [앱 만들기] 버튼 클릭합니다.
- 앱 이름: 앱의 이름 입력.
- 앱 유형: 게임/앱 선택.
- 무료/유료 여부: 여기서 유료는 유료로 앱을 다운로드 하는 경우를 뜻합니다.
스토어 등록정보 작성
앱을 만들고 선택하면 앱 내 대시보드 탭으로 이동합니다.
대시보드 화면에 있는 앱 설정 부분을 차례대로 완료해주세요.
세부 설정 방법에 대해서는 잘 설명되어 있는 이 블로그 글을 참고해주세요.
몇 가지 팁을 알려드리자면,
개인정보처리방침의 경우 저는 아래 사이트에서 자동생성하여 노션 페이지를 만들어 등록했습니다.
앱 스크린샷 이미지는 아래 사이트에서 목업 이미지를 생성하여 등록했습니다. (무료의 경우 화질이 다소 낮음)
이렇게 스토어 등록정보를 모두 작성했다면 내부 테스트로 넘어갑니다.
4. 내부 테스트
대시보드 혹은 [왼쪽 테스트 및 출시] 탭에서 [테스트] - [내부 테스트]를 선택합니다.
- 테스터 선택 : 테스터는 이메일 계정을 통해 추가할 수 있습니다.
- 새 버전 만들기 : 앱 무결성에서 [서명 키 선택] 버튼을 클릭합니다. 그리고 아까 빌드해둔 aab 파일을 App Bundle 에 업로드 합니다. 출시명과 출시 노트는 임의로 입력해주세요.
이제 [다음]을 누르면 미리보기 및 확인으로 넘어갑니다.
이때 오류나 경고가 있다면 내용을 확인 후 수정해주세요.
내부 테스트 출시를 완료했다면 [테스터] 탭에서 링크 복사를 해주세요.
복사한 링크를 개인 기기로 전송하여 열면 테스트 앱을 다운받아 실행할 수 있습니다.
직접 실행해보고 문제가 없다면 [출시] 탭으로 돌아가 버전 승급 메뉴를 누르고 비공개 테스트를 활성화해주세요.
5. 비공개 테스트
비공개 테스트로 넘어왔다면 [국가 선택]과 [테스터 선택]을 설정해줍니다.
설정을 완료하고 [버전 미리보기 및 확인]까지 완료하면 [게시 개요] 탭에서 검토 요청을 할 수 있습니다.
검토 요청은 일반적으로 7일 이내 완료됩니다.
6. 프로덕션 검수
실제 앱을 출시하기 위해서는 프로덕션 액세스 신청을 완료해야 합니다.
이전에 검토를 요청한 비공개 테스트 버전이 게시되었다면 20명 이상이 비공개 테스트 참여를 해야합니다. 이후 14일 이상 비공개 테스트를 실행하면 프로덕션 신청을 할 수 있습니다.
'나는 이렇게 학습한다 > App' 카테고리의 다른 글
Flutter FloatingActionButton 터치 시 버튼 모양 불일치 해결하기 (0) | 2024.11.19 |
---|---|
Flutter 앱 아이콘과 이름, 스플래시 화면 설정하기 (0) | 2024.11.18 |
Flutter의 Wrap 위젯으로 동적 레이아웃 쉽게 구성하기 (0) | 2024.09.06 |
flutter _ 날짜 사용법(DateTime, Duration, difference, isAfter, isBefore, add, substract) (0) | 2023.01.01 |
flutter _ PageView 와 PageController, Timer 사용방법 (0) | 2023.01.01 |