테스터에게 App Bundle 릴리스 배포 - Codelab

1. 개요

이미지10.png

이 Codelab에서는 Firebase 앱 배포 및 Gradle 플러그인을 사용하여 테스터에게 Android App Bundle 출시를 배포하는 방법을 알아봅니다. 앱 배포는 앱의 시험판 버전과 각 릴리스에 초대한 테스터를 관리할 수 있는 중앙 허브를 제공합니다.

당신이 배울 것

  • Firebase 앱을 Google Play에 연결하는 방법
  • 앱 번들로 앱을 패키징하고 빌드하는 방법
  • 릴리스를 만들고 라이브 테스터와 공유하는 방법
  • 테스터로서 새 릴리스를 다운로드하고 테스트하는 방법

필요한 것

  • 최신 Android 스튜디오 버전
  • Android Studio에서 생성한 서명된 번들 파일
  • 귀하가 소유자 또는 관리자인 Google Play 개발자 계정
  • Google Play의 앱이 Google Play 앱 대시보드에 설정되어 있으며 상태는 다음과 같습니다.
    • 앱이 Google Play 트랙(내부 테스트, 비공개 테스트, 공개 테스트 또는 프로덕션) 중 하나에 배포됩니다.
    • Google Play에서 앱의 검토가 완료되고 앱이 게시됩니다. 앱 상태 열에 내부 테스트(초안 내부 테스트 아님), 비공개 테스트, 공개 테스트 또는 프로덕션 상태 중 하나가 표시되면 앱이 게시된 것입니다.
  • Firebase에서 새 빌드 초대를 받기 위해 테스터로 사용할 수 있는 이메일 주소

2. Firebase 프로젝트 생성

  1. Firebase 에 로그인합니다.
  2. Firebase 콘솔에서 프로젝트 추가를 클릭한 다음 프로젝트 이름을 "AppBundlesCodelab"로 지정합니다. Firebase 프로젝트의 프로젝트 ID를 기억하세요. 프로젝트 ID를 수정하지 않으면 Firebase에서 프로젝트에 고유한 ID를 자동으로 할당합니다.

    이미지8.png
  3. (선택 사항) 메시지가 표시되면 Google Analytics를 활성화합니다.
  4. 나머지 단계를 완료한 다음 프로젝트 만들기를 클릭합니다.

프로젝트에 앱 번들 추가

  1. Firebase 콘솔에서 앱 추가 를 클릭합니다.

    이미지5.png
  2. 앱을 등록할 때 Google Play 개발자 계정에 업로드된 앱과 동일한 패키지 이름을 사용해야 합니다. 마지막으로 앱 등록 을 클릭합니다.
  3. 나머지 단계를 완료하여 앱의 Firebase 구성 파일( google-services.json )을 앱에 추가합니다. Android의 경우 앱 배포에는 앱에 추가할 Firebase SDK가 없습니다.
  4. 콘솔로 계속을 클릭합니다.
  1. Firebase 콘솔에서 프로젝트 설정 으로 이동합니다.

    이미지2.png
  2. 통합 탭에서 Google Play 카드의 링크를 클릭합니다.
  3. 화면의 안내에 따라 앱 배포 통합을 활성화한 다음 새로 만든 Firebase 앱을 선택하여 Google Play에 연결하세요.

이제 이러한 단계를 완료했으므로 앱의 패키지 이름이 일치하는 한 Firebase 앱이 Google Play 개발자 계정의 앱에 연결됩니다.

3. 프로젝트에 앱 배포 추가

앱 배포 Gradle 플러그인 추가

이제 Android Studio를 사용하여 앱 배포 및 Gradle 플러그인을 앱에 추가합니다.

  1. 프로젝트 수준 Gradle 파일( android/build.gradle.kts )에서 plugins 블록에 App Distribution Gradle 플러그인을 추가합니다.
    plugins {
         //...
    
         // Add the App Distribution Gradle plugin
         id("com.google.firebase.appdistribution") version "4.0.0" apply false
    }
    
  2. 프로젝트 수준의 Settings Gradle 파일( android/settings.gradle.kts )에서 Google의 Maven 저장소를 pluginManagement 블록에 추가합니다.
     pluginManagement {
         // Check that you have Google's Maven repository (if not, add it).
         repositories {
             google()
             mavenCentral()
         }
     }
    
  3. 앱 수준 Gradle 파일( android/app/build.gradle.kts )에서 plugins 블록에 앱 배포 플러그인을 추가합니다.
    plugins {
         //...
    
         // Add the App Distribution plugin
         id("com.google.firebase.appdistribution")
    }
    
  4. 회사 프록시 또는 방화벽 뒤에 있는 경우 앱 배포가 Firebase에 배포를 업로드할 수 있도록 다음 Java 시스템 속성을 추가합니다.
    -Djavax.net.ssl.trustStore=/path/to/truststore -Djavax.net.ssl.trustStorePassword=password
    

Firebase 프로젝트 인증

Gradle 플러그인을 사용하려면 먼저 Firebase 프로젝트를 인증해야 합니다. 이 Codelab에서는 플러그인의 로그인 작업을 사용하여 Google 계정에 로그인합니다.

  1. Android 프로젝트의 루트에서 다음 명령을 실행합니다.
    ~/your-android-project$ ./gradlew appDistributionLogin
    
  2. 명령이 인증 링크를 인쇄하면 브라우저에서 엽니다. 메시지가 표시되면 Google 계정에 로그인하고 Firebase 프로젝트에 대한 액세스 권한을 부여합니다. Gradle 명령어는 앱 배포 플러그인이 Firebase 인증에 사용하는 새로고침 토큰을 출력합니다.
  3. 환경 변수 FIREBASE_TOKEN 이전 단계의 토큰으로 설정합니다.
    ~/your-android-project$ export FIREBASE_TOKEN=your_firebase_token
    

4. Android Studio에서 번들 속성 구성

이 단계에서는 나중에 배포할 빌드의 테스터로 자신을 추가합니다. 빌드를 배포하면 테스터는 Firebase에서 새 빌드를 테스트하도록 초대하는 이메일 알림을 받습니다.

app/build.gradle.kts 에서 firebaseAppDistribution 섹션을 추가하고 다음 매개변수를 포함합니다.

  • appID : 앱의 Firebase 앱 ID입니다. 프로젝트 설정일반 에서 찾을 수 있습니다.
  • artifactType : 앱의 파일 유형( AAB ).
  • testers : 테스터의 이메일 주소입니다. 이 Codelab의 경우 배포된 빌드를 테스트할 수 있도록 자신의 이메일을 추가하세요.

예를 들어:

    android {

       // ...

       buildTypes {
            getByName("release") {
                firebaseAppDistribution {
                  appId = "yourAppId"
                  artifactType = "AAB"
                  testers = "ali@example.com, bri@example.com, cal@example.com"
                }
            }
        }

        // ...
    }

옵션으로 -PappDistribution- property-name = property-value 형식으로 명령줄 인수를 전달하여 build.gradle.kts 에 설정된 값을 재정의할 수도 있습니다.

5. 릴리스 빌드 및 배포

  1. bundle Variant Gradle 작업을 실행하여 앱 번들 파일(
    $ ./gradlew :base:bundleRelease
    
    을 빌드합니다.
  2. 애플리케이션의 빌드 디렉터리에서 번들을 찾습니다(기본 위치는 app/build/outputs/bundle/release ).
  3. 릴리스를 배포하려면 프로젝트의 Gradle 래퍼를 사용하여 대상 bundleReleaseappDistributionUploadRelease 빌드합니다. Firebase 토큰(3단계: 앱에 앱 배포 추가에서 받은 토큰)을 포함합니다.
    export FIREBASE_TOKEN=your_firebase_token
    
    ./gradlew --stop // Only needed for environment variable changes
    
    ./gradlew bundleRelease appDistributionUploadRelease
    

테스터는 이제 빌드를 다운로드하고 테스트하라는 이메일 초대를 받게 됩니다. 개발자는 이제 앱 배포 대시보드의 릴리스 탭에서 빌드를 모니터링할 수 있습니다.

6. 릴리스 다운로드 및 테스트

이 섹션에서는 배포한 릴리스를 다운로드하기 위해 테스터로 설정합니다. 테스터는 테스트 기기를 인증하고 Google Play 스토어 앱에서 내부 앱 공유를 사용하도록 설정해야 합니다.

  1. 테스트 기기에서 테스터 이메일 계정에 로그인하고 Firebase의 초대를 엽니다.

    이미지6.png
  2. Google 계정으로 로그인하고 초대를 수락하여 배포된 릴리스를 테스트하십시오. 옵션으로 다운로드한 릴리스가 기기의 Downloads 폴더에 추가되지 않도록 하는 Firebase App Tester를 다운로드할 수도 있습니다. 또한 다운로드 진행률 및 릴리스 버전과 같은 릴리스에 대한 추가 정보도 표시합니다.

    이미지9.png
  3. 릴리스에서 다운로드를 탭하여 Play 스토어에서 설치합니다.
  4. 메시지가 표시되면 나머지 단계를 완료하여 내부 앱 공유를 활성화합니다(지침은 테스트 장치에 표시되며 한 번만 완료하면 됩니다).

다운로드가 완료되면 릴리스가 자동으로 장치의 홈 화면에 바로 가기로 나타납니다.

7. 축하합니다!

방금 Firebase 앱 배포를 사용하여 App Bundle을 업로드하고 테스터에게 릴리스를 배포했습니다.

다음 단계