테스터 의견 수집

이 가이드에서는 선택사항인 테스터가 의견을 제출할 수 있도록 Firebase App Distribution Android SDK (스크린샷 포함) 앱에서 직접 다운로드할 수 있습니다.

시작하기 전에

아직 추가하지 않았다면 Android 프로젝트에 Firebase를 추가합니다.

1단계: App Distribution Tester API 사용 설정

  1. Google Cloud 콘솔을 엽니다. Firebase 프로젝트를 선택합니다.

  2. Firebase App Testers API에서 사용 설정을 클릭합니다.

2단계: 앱에 App Distribution 추가하기

App Distribution Android SDK는 다음 두 라이브러리로 구성됩니다.

  • firebase-appdistribution-api: 모든 빌드 변형에 포함할 수 있는 API 전용 라이브러리입니다.
  • firebase-appdistribution: 전체 SDK 구현입니다(선택사항).

API 전용 라이브러리에서는 코드가 SDK를 호출할 수 있습니다. 전체 SDK 구현이 없으면 호출이 효과가 없습니다.

  1. App Distribution Android SDK의 종속 항목을 다음과 같이 선언합니다. 모듈 (앱 수준) Gradle 파일 (일반적으로 <project>/<app-module>/build.gradle.kts 또는 <project>/<app-module>/build.gradle)을 입력합니다.

  2. 전체 SDK 구현의 자체 업데이트 기능을 포함하지 않기 위해 을 확인하고, 빌드하려면 다음과 같은 빌드 변형을 식별하세요. 빌드 유형 또는 제품 버전 App Distribution를 통해 배포할 애플리케이션입니다.

  3. App Distribution Android SDK의 종속 항목을 다음과 같이 선언합니다. 모듈 (앱 수준) Gradle 파일 (일반적으로 app/build.gradle). 다음 항목만 변형에 이르기까지 전체 SDK를 출시 전 테스트:

    Kotlin+KTX

    dependencies {
        // ADD the API-only library to all variants
        implementation("com.google.firebase:firebase-appdistribution-api-ktx:16.0.0-beta13")
    
        // ADD the full SDK implementation to the "beta" variant only (example)
        betaImplementation("com.google.firebase:firebase-appdistribution:16.0.0-beta13")
    }

    Java

    dependencies {
        // ADD the API-only library to all variants
        implementation("com.google.firebase:firebase-appdistribution-api:16.0.0-beta13")
    
        // ADD the full SDK implementation to the "beta" variant only (example)
        betaImplementation("com.google.firebase:firebase-appdistribution:16.0.0-beta13")
    }

3단계: 인앱 의견 구성

테스터의 의견을 수집하려면 다음 트리거 중 하나를 사용하여 테스터가 의견 보내기를 시작할 수 있도록 합니다.

  • 내장된 알림 트리거: App Distribution Android SDK는 테스터가 앱의 어느 곳에서나 탭할 수 있습니다. 다음과 같은 경우 이 트리거를 사용합니다. 더 빠르게 시작할 수 있으며 테스터가 의견을 제공할 수 있습니다.

  • 커스텀 트리거: 앱의 버튼 또는 메뉴 항목을 탭하거나 기기를 흔드는 것과 같은 자체 트리거 메커니즘을 제공할 수 있습니다.

이러한 트리거 중 하나를 사용하고 테스터가 의견을 제출하면 Android SDK가 다음 작업을 수행합니다.

  1. 앱에서 현재 진행 중인 활동의 스크린샷을 캡처합니다.

  2. 테스터가 SDK의 테스트 기능을 사용 설정했는지 확인하는 검사를 실행합니다. 만약 테스트 기능이 사용 설정되지 않은 경우 Android SDK에서 테스터에게 서명하라는 메시지를 표시합니다. Google 계정으로 App Distribution에 로그인합니다.

  3. 테스터가 의견을 작성하고 제출할 수 있는 전체 화면 활동을 시작합니다.

옵션 1: 알림 트리거

showFeedbackNotification()을 사용하여 테스터 기기에서 테스터가 탭하여 의견 보내기를 시작할 수 있는 영구 알림 또는 진행 중인 알림을 표시합니다. 알림을 구성할 때 테스터가 의견을 제출하기 전에 표시할 텍스트와 알림 중단 수준(알림 채널의 중요도에 해당)을 제공해야 합니다. 테스터에게 의견 데이터의 수집 및 처리에 관한 알림을 제공하려면 이 텍스트를 통해 알리면 됩니다.

showFeedbackNotification()을 사용하고 앱이 백그라운드로 전환되면 알림이 숨겨집니다. 알림을 명시적으로 숨기려면 cancelFeedbackNotification()을 사용하세요. 기본 활동의 onCreate()showFeedbackNotification()을 삽입하는 것이 좋습니다.

Kotlin+KTX

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        Firebase.appDistribution.showFeedbackNotification(
            // Text providing notice to your testers about collection and
            // processing of their feedback data
            R.string.additionalFormText,
            // The level of interruption for the notification
            InterruptionLevel.HIGH)
    }
}

Java

public class MainActivity extends AppCompatActivity {
    FirebaseAppDistribution firebaseAppDistribution =
        FirebaseAppDistribution.getInstance();
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        firebaseAppDistribution.showFeedbackNotification(
            // Text providing notice to your testers about collection and
            // processing of their feedback data
            R.string.additionalFormText,
            // The level of interruption for the notification
            InterruptionLevel.HIGH);
    }
}

옵션 2: 커스텀 트리거

startFeedback() 메서드를 사용하여 원하는 메커니즘으로 의견 보내기를 시작합니다. 예를 들어 의견을 트리거하려면 앱의 작업 메뉴에 '의견 보내기' 메뉴 항목을 추가하거나 테스터가 기기를 흔들거나 스크린샷을 찍을 수 있게 하는 것이 좋습니다. 의견을 트리거할 때 테스터가 의견을 제출하기 전에 표시할 텍스트를 제공하세요. 테스터에게 의견 데이터의 수집 및 처리에 관한 알림을 제공하려면 이 텍스트를 통해 알리면 됩니다.

Kotlin+KTX

Firebase.appDistribution.startFeedback(R.string.feedbackMessage)

Java

FirebaseAppDistribution.getInstance().startFeedback(R.string.feedbackMessage);

4단계: 구현 빌드 및 테스트

로컬 테스트

먼저 앱을 배포하지 않고 구현을 테스트하려면 다음 단계를 따르세요.

  1. 로컬 기기에서 개발 모드를 사용 설정합니다.

    adb shell setprop debug.firebase.appdistro.devmode true
  2. 앱을 전체 App Distribution을 포함하는 출시 전 변형으로 빌드합니다. 이러한 메커니즘을 사용하여 피드백을 트리거할 수 있는지 테스트하세요. 구현 3단계: 인앱 의견 구성하기 개발 모드에서는 의견이 제출되지 않습니다.

  3. 테스트 후 기기에서 개발 모드를 사용 중지할 수 있습니다.

    adb shell setprop debug.firebase.appdistro.devmode false

엔드 투 엔드 테스트

앱이 의견을 보낼 수 있는지 테스트하려면 앱을 출시 전 앱으로 빌드하세요. 전체 App Distribution 라이브러리가 포함된 변형을 생성하도록 하고 구현할 수 있습니다.

  1. App Distribution에 새 앱 버전을 업로드합니다.

  2. 액세스 권한이 있는 계정에 앱 출시 버전을 배포합니다.

  3. App Distribution의 웹 또는 Android 테스터 앱을 통해 앱을 다운로드합니다.

  4. 3단계: 인앱 의견 구성에 구현된 메커니즘을 사용하여 의견을 트리거합니다.

  5. 앱 출시 버전을 배포한 계정과 동일한 계정으로 로그인했는지 확인하고 의견을 제출합니다.

  6. 새 버전의 카드에서 의견을 확인하세요. Firebase 콘솔.

일반적인 문제(예: 테스터가 앱에서 의견 보내기를 시작할 수 없음)를 해결하는 방법을 알아보려면 SDK로 테스트 기능 사용 설정을 참조하세요.

5단계: 테스터 의견 관리

테스터가 의견을 보낼 수 있도록 사용 설정한 후 다음 도구를 사용하여 의견을 검토하고 조치를 취할 수 있습니다.

Firebase 콘솔에서 의견 보기 및 삭제

다음을 포함한 사용자 의견을 검토하고 삭제할 수 있습니다. 테스터 의견 탭을 열어 Firebase 콘솔 사용자 의견은 출시 버전별로 정리되므로 의견이 적용되는 버전을 확인할 수 있습니다.

사용자 의견을 검토한 후 의견 삭제 버튼을 클릭하여 해당 의견을 삭제할 수 있습니다. 삭제된 의견은 출시 버전에서 삭제됩니다.

새로운 의견에 관한 이메일 알림 받기

새로운 테스터 의견에 관해 적극적으로 알아보려면 테스터가 의견을 제출할 때 이메일 알림을 받으면 됩니다. 이메일 알림에는 테스터가 작성한 의견과 제출한 스크린샷의 링크가 포함됩니다.

이 기본 메커니즘을 통해 App Distribution개의 이메일 알림을 받으려면 다음 요건을 충족해야 합니다. firebase.projects.update 권한 다음 역할에는 다음이 포함됩니다. 기본적으로 Firebase 관리자가 필요한 권한 또는 프로젝트 소유자 또는 편집자로 식별됩니다.

기본적으로 새로운 의견 보고서가 제출되면 이메일 알림을 받는 데 필요한 권한이 있는 모든 프로젝트 구성원에게는 이메일이 전송됩니다. 프로젝트 구성원은 이러한 알림을 개별적으로 선택 해제할 수 있습니다.

이메일 알림을 사용 중지하려면 Firebase 알림 수신을 참조하세요.

서드 파티 도구에 새로운 의견 보내기

팀이 원하는 알림에 App Distribution 알림을 보낼 수도 있습니다. Cloud Functions for Firebase을(를) 사용하는 채널 예를 들어 새로운 인앱 의견에 관한 알림 이벤트를 캡처하고 Discord, Slack, Jira와 같은 서드 파티 서비스에 알림 정보를 게시하는 함수를 작성할 수 있습니다.

Cloud Functions for Firebase를 사용하여 고급 알림 기능을 설정하려면 다음 안내를 따르세요. 다음 단계를 따르세요.

  1. Cloud Functions for Firebase 설정 여기에는 다음 작업이 포함됩니다.

    1. Node.js와 npm을 다운로드합니다.

    2. Firebase CLI를 설치하고 로그인합니다.

    3. Firebase CLI를 사용하여 Cloud Functions for Firebase를 초기화합니다.

  2. 다음과 같은 함수 작성 및 배포 App Distribution에서 인앱 의견 알림 이벤트를 캡처하고 이벤트 페이로드 (예: Discord).

Jira에 새로운 의견을 보내는 방법을 보여주는 함수 예시를 보려면 이 샘플을 참조하세요.

캡처할 수 있는 모든 알림 이벤트에 대한 자세한 내용은 App Distribution 알림 문서