Zbieranie opinii od testerów

Z tego przewodnika dowiesz się, jak włączyć opinie w aplikacji za pomocą opcjonalnego Firebase App Distribution pakietu SDK na Androida, aby testerzy mogli przesyłać opinie (w tym zrzuty ekranu) bezpośrednio w aplikacji.

Zanim zaczniesz

Jeśli jeszcze tego nie zrobisz, dodaj Firebase do projektu aplikacji na Androida.

Krok 1. Włącz interfejs API testera App Distribution

  1. Otwórz konsolę Google Cloud i wybierz projekt w Firebase.

  2. W sekcji Firebase App Testers API kliknij Włącz.

Krok 2. Dodaj App Distribution do aplikacji

Pakiet SDK App Distribution na Androida składa się z 2 bibliotek:

  • firebase-appdistribution-api: biblioteka zawierająca tylko interfejs API, którą możesz uwzględnić we wszystkich wariantach kompilacji.
  • firebase-appdistribution: pełna implementacja pakietu SDK (opcjonalna).

Biblioteka zawierająca tylko interfejs API umożliwia Twojemu kodowi wywoływanie pakietu SDK. Jeśli pełna implementacja pakietu SDK nie jest obecna, wywołania nie mają żadnego efektu.

  1. Zadeklaruj zależność od pakietu SDK App Distribution na Androida w pliku Gradle modułu (na poziomie aplikacji) (zwykle <project>/<app-module>/build.gradle.kts lub <project>/<app-module>/build.gradle).

  2. Aby uniknąć uwzględniania w kompilacjach Google Play funkcji automatycznej aktualizacji pełnej implementacji pakietu SDK określ warianty kompilacji, w tym typy kompilacji lub wersje produktu które będziesz rozpowszechniać za pomocą App Distribution.

  3. Zadeklaruj zależność od Android SDK w pliku Gradle modułu (na poziomie aplikacji) (zwykle app/build.gradle). Dodaj pełną implementację pakietu SDK tylko do wariantów przeznaczonych wyłącznie do testowania przedpremierowego:App Distribution

    Kotlin

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

    Java

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

Krok 3. Skonfiguruj opinie w aplikacji

Aby zbierać opinie od testerów, użyj jednego z tych aktywatorów, aby umożliwić testerom rozpoczęcie przesyłania opinii:

  • Wbudowany aktywator powiadomień: Pakiet Android SDK może wyświetlać powiadomienie o trwającej aktywności, które tester może kliknąć w dowolnym miejscu aplikacji. Użyj tego aktywatora, jeśli chcesz szybciej zacząć i nie musisz dostosowywać sposobu, w jaki testerzy przesyłają opinie.App Distribution

  • Aktywator niestandardowy: możesz udostępnić własny mechanizm aktywacji, np. kliknięcie przycisku lub elementu menu w aplikacji albo potrząśnięcie urządzeniem.

Gdy używasz jednego z tych aktywatorów, a tester przesyła opinię, pakiet SDK na Androida wykonuje te czynności:

  1. Robi zrzut ekranu bieżącej aktywności aplikacji.

  2. Sprawdza, czy tester włączył funkcje testowania pakietu SDK. Jeśli funkcje testowania nie są włączone, pakiet Android SDK wyświetla prośbę o zalogowanie się do App Distribution za pomocą konta Google.

  3. Uruchamia aktywność na pełnym ekranie, która umożliwia testerowi napisanie i przesłanie opinii.

Opcja 1. Aktywator powiadomień

Użyj showFeedbackNotification(), aby wyświetlić trwałe lub ciągłe powiadomienie na urządzeniu testera, które może on kliknąć, aby rozpocząć przesyłanie opinii. Podczas konfigurowania powiadomienia musisz podać tekst, który będzie wyświetlany testerowi przed przesłaniem opinii, oraz poziom przerwania powiadomienia (odpowiadający ważności kanału powiadomień). Jeśli chcesz poinformować testerów o zbieraniu i przetwarzaniu ich opinii, możesz użyć tego tekstu.

Gdy używasz showFeedbackNotification() i aplikacja przechodzi w tle, powiadomienie jest ukrywane. Jeśli chcesz wyraźnie ukryć powiadomienie, użyj cancelFeedbackNotification(). Zalecamy umieszczenie showFeedbackNotification() w onCreate() głównej aktywności.

Kotlin

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);
    }
}

Opcja 2. Aktywator niestandardowy

Użyj metody startFeedback(), aby rozpocząć przesyłanie opinii za pomocą wybranego mechanizmu. Aby na przykład aktywować przesyłanie opinii, możesz dodać do menu czynności aplikacji element „Prześlij opinię” lub umożliwić testerom potrząśnięcie urządzeniem albo zrobienie zrzutu ekranu. Gdy aktywujesz przesyłanie opinii, podaj tekst, który będzie wyświetlany testerowi przed przesłaniem opinii. Jeśli chcesz poinformować testerów o zbieraniu i przetwarzaniu ich opinii, możesz użyć tego tekstu.

Kotlin

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

Java

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

Krok 4. Skompiluj i przetestuj implementację

Testowanie lokalne

Aby przetestować implementację bez konieczności rozpowszechniania aplikacji, wykonaj te czynności:

  1. Włącz tryb dewelopera na urządzeniu lokalnym:

    adb shell setprop debug.firebase.appdistro.devmode true
  2. Skompiluj aplikację jako wersję przedpremierową, która zawiera pełne App Distribution biblioteki, i sprawdź, czy możesz aktywować przesyłanie opinii za pomocą mechanizmu zaimplementowanego w kroku 3. Skonfiguruj opinie w aplikacji. W trybie dewelopera opinie nie są przesyłane.

  3. Po zakończeniu testowania możesz wyłączyć tryb dewelopera na urządzeniu:

    adb shell setprop debug.firebase.appdistro.devmode false

Testowanie kompleksowe

Aby sprawdzić, czy aplikacja może wysyłać opinie, skompiluj ją jako wersję przedpremierową , która zawiera pełne biblioteki App Distribution, i przetestuj implementację , wykonując te czynności:

  1. Prześlij nową wersję aplikacji do App Distribution.

  2. Rozpowszechnij wersję aplikacji na koncie, do którego masz dostęp.

  3. Pobierz aplikację za pomocą aplikacji internetowej lub aplikacji dla testerów na Androida App Distribution.

  4. Aktywuj przesyłanie opinii za pomocą mechanizmu zaimplementowanego w kroku 3. Skonfiguruj opinie w aplikacji.

  5. Upewnij się, że logujesz się na to samo konto, na które rozpowszechniasz wersję aplikacji, i prześlij opinię.

  6. Wyświetl opinię na karcie nowej wersji w Firebase konsoli.

Aby dowiedzieć się, jak rozwiązywać typowe problemy, np. gdy testerzy nie mogą rozpocząć przesyłania opinii w aplikacji, przeczytaj artykuł Włączanie funkcji testowania za pomocą pakietu SDK.

Krok 5. Zarządzaj opiniami testerów

Gdy umożliwisz testerom przesyłanie opinii, możesz użyć tych narzędzi, aby je przeglądać i podejmować odpowiednie działania:

Wyświetlanie i usuwanie opinii w konsoli Firebase

Możesz przeglądać i usuwać opinie użytkowników, w tym zrzuty ekranu, otwierając kartę Opinie testerów w ramach konkretnej wersji w Firebase konsoli. Opinie użytkowników są uporządkowane według wersji, dzięki czemu możesz potwierdzić, do której wersji się odnoszą.

Po przejrzeniu opinii użytkownika możesz ją usunąć, klikając przycisk Usuń opinię. Usunięta opinia zostanie usunięta z wersji.

Otrzymywanie alertów e-mail o nowych opiniach

Aby na bieżąco otrzymywać informacje o nowych opiniach testerów, możesz otrzymywać alerty e-mail, gdy tester prześle opinię. Alert e-mail zawiera pisemną opinię testera i link do przesłanych przez niego zrzutów ekranu.

Aby otrzymywać App Distribution alerty e-mail za pomocą tego domyślnego mechanizmu, musisz mieć uprawnienie firebase.projects.update. Domyślnie to wymagane uprawnienie mają użytkownicy z przypisaną rolą administratora Firebase lub właściciela projektu lub redaktora.

Domyślnie każdy użytkownik projektu, który ma wymagane uprawnienia do otrzymywania alertów e-mail, otrzyma e-maila, gdy zostanie przesłany nowy raport z opinią. Użytkownicy projektu mogą indywidualnie zrezygnować z tych alertów.

Aby wyłączyć alerty e-mail, przeczytaj artykuł Otrzymywanie alertów Firebase.

Wysyłanie nowych opinii do narzędzi innych firm

Możesz też wysyłać alerty App Distribution do preferowanego kanału powiadomień zespołu za pomocą Cloud Functions for Firebase. Możesz na przykład napisać funkcję, która przechwytuje zdarzenie alertu o nowej opinii w aplikacji i wysyła informacje o alercie do usługi innej firmy, takiej jak Discord, Slack lub Jira.

Aby skonfigurować zaawansowane funkcje alertów za pomocą Cloud Functions for Firebase, wykonaj te czynności:

  1. Skonfiguruj Cloud Functions for Firebase, co obejmuje te zadania:

    1. Pobierz Node.js i npm.

    2. Zainstaluj interfejs wiersza poleceń Firebase i zaloguj się w nim.

    3. Zainicjuj Cloud Functions for Firebase za pomocą interfejsu wiersza poleceń Firebase.

  2. Napisz i wdróż funkcję, która przechwytuje zdarzenie alertu o opinii w aplikacji z App Distribution i obsługuje ładunek zdarzenia (np. wysyła informacje o alercie w wiadomości na Discordzie).

Aby zobaczyć przykładową funkcję, która pokazuje, jak wysyłać nowe opinie do Jiry, zapoznaj się z tym przykładem.

Więcej informacji o wszystkich zdarzeniach alertów, które możesz przechwytywać, znajdziesz w dokumentacji referencyjnej alertów App Distribution.