
2주간 20명 대상 비공개 테스트 진행
2023년 11월 13일 이후에 만든 개인 계정을 사용하는 개발자는 앱을 테스트해야 Google Play에 앱을 배포할 수 있습니다. 개발자는 이 요구사항을 충족할 때까지 Play Console의 특정 기능(예: 프로덕션(출시 > 프로덕션), 사전 등록(출시 > 테스트 > 사전 등록)을 사용할 수 없습니다. 새로운 개인 개발자 계정의 앱 테스트 요구사항
구글 플레이 스토어에 조직이 아닌 개인 계정으로 앱을 출시하기 위해서는 반드시 비공개 테스트 과정을 거쳐야 한다. 비공개 테스트는 사전에 이메일을 등록한 사용자들만 앱을 다운 받아서 테스트해 볼 수 있다.
새로 만든 개인 개발자 계정이 있는 경우 최근 14일 이상 지속적으로 테스트에 참여하겠다고 선택한 상태인 20명 이상의 테스터를 대상으로 비공개 테스트를 진행해야 합니다.
심지어 20명이 모여야 1일부터 카운트가 시작되고, 테스터들은 2주간 계속해서 앱 설치를 유지해야 한다. 혹시 모르기 때문에 테스터는 20명 이상으로 넉넉히 구하는 게 좋다.
이 까다로운 조건 때문에 크몽에는 테스터 20명 조건을 달성해 주는 상품도 생겼다. 지인만으로 20명을 채우기 어려울 것 같다면 테스터 품앗이를 제공하는 오픈채팅방도 있다. (실질적으로는 네이버 카페에서 진행된다.)
따라서 앱 출시 계획이 있다면 이 비공개 테스트 과정까지 포함해서 일정을 고려해야 한다.
앱 서명 (keystore)
Android에서는 인증서를 사용해 디지털 방식으로 서명된 APK만 기기에 설치하거나 업데이트할 수 있습니다. Android App Bundle을 사용하여 출시하는 경우 업로드 키로 App Bundle에 서명한 후 Play Console에 업로드해야 합니다. 앱 서명
abb
파일을 업로드하려면 앱 서명이 필요하다.
keytool -genkey -v -keystore ~/upload-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias upload
명령어를 입력해서 upload-keystore.jks
파일을 생성한다.
storePassword=<password-from-previous-step>
keyPassword=<password-from-previous-step>
keyAlias=upload
storeFile=upload-keystore.jks
패스워드 두 가지를 입력해서 key.properties
파일도 생성한다.
android > key.properties
android > app > keystore.jks
파일 위치가 잘못되면 빌드 에러가 발생할 수도 있으니까 신경써서 생성한다.
def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}
...
signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
storePassword keystoreProperties['storePassword']
}
}
buildTypes {
release {
signingConfig signingConfigs.release
}
}
app > build.gradle
파일에도 코드를 추가한다.
타켓 SDK 버전 34 이상

현재 앱이 33의 API 수준을 타켓팅하고 있지만, 보안 및 성능에 최적화된 최신 API를 기반으로 앱을 빌드하려면 API 수준 34 이상을 타켓팅해야 합니다.
앱 서명을 추가해서 abb
파일을 업로드하는 데는 성공했지만 오류 메세지로 인해 다음 단계로 넘어갈 수 없었다.
2024년 8월 31일부터 다음과 같습니다. 새 앱과 앱 업데이트는 Google Play에 제출하려면 Android 14(API 수준 34)를 타겟팅해야 합니다. Google Play 앱의 대상 API 수준 요구사항
올해 9월부터 SDK 버전이 34 이상이어야 앱을 제출할 수 있다고 한다.
// local.properties
flutter.minSdkVersion=21
flutter.compileSdkVersion=34
flutter.targetSdkVersion=34
// app/build.gradle
def flutterCompileSdkVersion = localProperties.getProperty('flutter.compileSdkVersion')
if (flutterCompileSdkVersion == null) {
flutterCompileSdkVersion = '34'
}
def flutterMinSdkVersion = localProperties.getProperty('flutter.minSdkVersion')
if (flutterMinSdkVersion == null) {
flutterMinSdkVersion = '21'
}
def flutterTargetSdkVersion = localProperties.getProperty('flutter.targetSdkVersion')
if (flutterTargetSdkVersion == null) {
flutterTargetSdkVersion = '34'
}
...
compileSdkVersion flutterCompileSdkVersion.toInteger()
...
targetSdkVersion flutterTargetSdkVersion.toInteger()
versionCode flutterVersionCode.toInteger()
local.properties
파일에 코드를 추가하고, app/build.gradle
파일에는 코드 추가 및 수정을 했다.
기호 파일 생성

경고 메세지라 필수 사항은 아니지만 간단해서 기호 파일을 등록했다.

프로젝트의 build\app\intermediates\merged_native_libs\release\out\lib
디렉토리를 압축해서 zip
파일을 생성한다.

구글 플레이 콘솔 메뉴에서 App Bundle
탐색기를 들어간다. 현재 버전에서 우측 화살표를 클릭한다.

다운로드 탭에서 네이티브 디버그 기호
에 압축한 zip
파일을 업로드한다.
앱 게시 신청 완료

드디어 비공개 테스트 앱 게시 신청을 완료했다🎉🎉
앱 게시는 처음이라 삽질한 부분이 많았기 때문에 그 과정을 간단하게 기록해봤다.