Собирайте обратную связь от тестировщиков

В этом руководстве описывается, как включить обратную связь в приложении с помощью дополнительного Android SDK Firebase App Distribution , чтобы ваши тестировщики могли отправлять отзывы (включая снимки экрана) непосредственно в приложении.

Прежде чем начать

Если вы еще этого не сделали, добавьте Firebase в свой проект Android .

Шаг 1. Включите API тестера App Distribution .

  1. Откройте консоль Google Cloud и выберите свой проект Firebase.

  2. В разделе API Firebase App Testers нажмите «Включить» .

Шаг 2. Добавьте App Distribution в свое приложение

Android SDK App Distribution состоит из двух библиотек:

  • firebase-appdistribution-api : библиотека только для API, которую вы можете включить во все варианты сборки .
  • firebase-appdistribution : полная реализация SDK (необязательно).

Библиотека только для API позволяет вашему коду вызывать SDK. Вызовы не имеют никакого эффекта, если отсутствует полная реализация SDK.

  1. Объявите зависимость для Android SDK для App Distribution в файле Gradle вашего модуля (на уровне приложения) (обычно <project>/<app-module>/build.gradle.kts или <project>/<app-module>/build.gradle ).

  2. Чтобы избежать включения функции самообновления полной реализации SDK в ваши сборки Google Play, определите варианты сборки, включая типы сборок или варианты продуктов , которые вы будете распространять через App Distribution .

  3. Объявите зависимость для Android SDK App Distribution в файле 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-beta14")
    
        // ADD the full SDK implementation to the "beta" variant only (example)
        betaImplementation("com.google.firebase:firebase-appdistribution:16.0.0-beta14")
    }

    Java

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

Шаг 3. Настройте обратную связь в приложении

Чтобы получить отзывы от тестировщиков, используйте один из следующих триггеров, позволяющих тестировщикам инициировать обратную связь:

  • Встроенный триггер уведомлений . Android SDK App Distribution может отображать постоянное уведомление, которое тестировщик может нажать в любом месте приложения. Используйте этот триггер, если вы хотите быстрее приступить к работе и вам не нужно настраивать способ предоставления обратной связи вашими тестировщиками.

  • Пользовательский триггер : вы можете создать собственный механизм триггера, например нажатие кнопки или пункта меню в приложении или встряхивание устройства.

Когда вы используете любой из этих триггеров и тестер отправляет отзыв, Android SDK выполняет следующие действия:

  1. Делает снимок экрана текущей активности приложения.

  2. Выполняет проверки, чтобы убедиться, что тестер включил функции тестирования SDK. Если функции тестирования не включены, Android SDK предложит тестировщику войти в App Distribution используя свою учетную запись Google.

  3. Запускает полноэкранное действие, позволяющее тестировщику писать и отправлять свои отзывы.

Вариант 1. Триггер уведомления.

Используйте showFeedbackNotification() для отображения постоянного или текущего уведомления на устройстве тестировщика, которое он может нажать, чтобы инициировать обратную связь. При настройке уведомления вам необходимо указать текст, который будет отображаться тестировщику перед отправкой отзыва, а также уровень прерывания уведомления (соответствующий важности канала уведомления). Если вы хотите уведомить своих тестировщиков о сборе и обработке их данных обратной связи, вы можете использовать текст для такого уведомления.

Когда вы используете showFeedbackNotification() и когда приложение переходит в фоновый режим, уведомление скрывается. Если вы хотите явно скрыть уведомление, используйте cancelFeedbackNotification() . Мы рекомендуем вам поместить showFeedbackNotification() в onCreate() вашего основного действия.

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. Инициализируйте Cloud Functions for Firebase с помощью интерфейса командной строки Firebase .

  2. Напишите и разверните функцию , которая фиксирует событие оповещения обратной связи в приложении из App Distribution и обрабатывает полезную нагрузку события (например, публикует информацию оповещения в сообщении на Discord).

Чтобы увидеть пример функции, показывающей, как отправить новый отзыв в Jira, обратитесь к этому примеру .

Чтобы узнать обо всех событиях оповещений, которые вы можете зафиксировать, см. справочную документацию по оповещениям App Distribution .

,

В этом руководстве описывается, как включить обратную связь в приложении с помощью дополнительного Android SDK Firebase App Distribution , чтобы ваши тестировщики могли отправлять отзывы (включая снимки экрана) непосредственно в приложении.

Прежде чем начать

Если вы еще этого не сделали, добавьте Firebase в свой проект Android .

Шаг 1. Включите API тестера App Distribution .

  1. Откройте консоль Google Cloud и выберите свой проект Firebase.

  2. В разделе API Firebase App Testers нажмите «Включить» .

Шаг 2. Добавьте App Distribution в свое приложение

Android SDK App Distribution состоит из двух библиотек:

  • firebase-appdistribution-api : библиотека только для API, которую вы можете включить во все варианты сборки .
  • firebase-appdistribution : полная реализация SDK (необязательно).

Библиотека только для API позволяет вашему коду вызывать SDK. Вызовы не имеют никакого эффекта, если отсутствует полная реализация SDK.

  1. Объявите зависимость для Android SDK для App Distribution в файле Gradle вашего модуля (на уровне приложения) (обычно <project>/<app-module>/build.gradle.kts или <project>/<app-module>/build.gradle ).

  2. Чтобы избежать включения функции самообновления полной реализации SDK в ваши сборки Google Play, определите варианты сборки, включая типы сборок или варианты продуктов , которые вы будете распространять через App Distribution .

  3. Объявите зависимость для Android SDK App Distribution в файле 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-beta14")
    
        // ADD the full SDK implementation to the "beta" variant only (example)
        betaImplementation("com.google.firebase:firebase-appdistribution:16.0.0-beta14")
    }

    Java

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

Шаг 3. Настройте обратную связь в приложении

Чтобы получить отзывы от тестировщиков, используйте один из следующих триггеров, позволяющих тестировщикам инициировать обратную связь:

  • Встроенный триггер уведомлений . Android SDK App Distribution может отображать постоянное уведомление, которое тестировщик может нажать в любом месте приложения. Используйте этот триггер, если вы хотите быстрее приступить к работе и вам не нужно настраивать способ предоставления обратной связи вашими тестировщиками.

  • Пользовательский триггер : вы можете создать собственный механизм триггера, например нажатие кнопки или пункта меню в приложении или встряхивание устройства.

Когда вы используете любой из этих триггеров и тестер отправляет отзыв, Android SDK выполняет следующие действия:

  1. Делает снимок экрана текущей активности приложения.

  2. Выполняет проверки, чтобы убедиться, что тестер включил функции тестирования SDK. Если функции тестирования не включены, Android SDK предложит тестировщику войти в App Distribution используя свою учетную запись Google.

  3. Запускает полноэкранное действие, позволяющее тестировщику писать и отправлять свои отзывы.

Вариант 1. Триггер уведомления.

Используйте showFeedbackNotification() для отображения постоянного или текущего уведомления на устройстве тестировщика, которое он может нажать, чтобы инициировать обратную связь. При настройке уведомления вам необходимо указать текст, который будет отображаться тестировщику перед отправкой отзыва, а также уровень прерывания уведомления (соответствующий важности канала уведомления). Если вы хотите уведомить своих тестировщиков о сборе и обработке их данных обратной связи, вы можете использовать текст для такого уведомления.

Когда вы используете showFeedbackNotification() и когда приложение переходит в фоновый режим, уведомление скрывается. Если вы хотите явно скрыть уведомление, используйте cancelFeedbackNotification() . Мы рекомендуем вам поместить showFeedbackNotification() в onCreate() вашего основного действия.

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. Инициализируйте Cloud Functions for Firebase с помощью интерфейса командной строки Firebase .

  2. Напишите и разверните функцию , которая фиксирует событие оповещения обратной связи в приложении из App Distribution и обрабатывает полезную нагрузку события (например, публикует информацию оповещения в сообщении на Discord).

Чтобы увидеть пример функции, показывающей, как отправить новый отзыв в Jira, обратитесь к этому примеру .

Чтобы узнать обо всех событиях оповещений, которые вы можете зафиксировать, см. справочную документацию по оповещениям App Distribution .

,

В этом руководстве описывается, как включить обратную связь в приложении с помощью дополнительного Android SDK Firebase App Distribution , чтобы ваши тестировщики могли отправлять отзывы (включая снимки экрана) непосредственно в приложении.

Прежде чем начать

Если вы еще этого не сделали, добавьте Firebase в свой проект Android .

Шаг 1. Включите API тестера App Distribution .

  1. Откройте консоль Google Cloud и выберите свой проект Firebase.

  2. В разделе API Firebase App Testers нажмите «Включить» .

Шаг 2. Добавьте App Distribution в свое приложение

Android SDK App Distribution состоит из двух библиотек:

  • firebase-appdistribution-api : библиотека только для API, которую вы можете включить во все варианты сборки .
  • firebase-appdistribution : полная реализация SDK (необязательно).

Библиотека только для API позволяет вашему коду вызывать SDK. Вызовы не имеют никакого эффекта, если отсутствует полная реализация SDK.

  1. Объявите зависимость для Android SDK для App Distribution в файле Gradle вашего модуля (на уровне приложения) (обычно <project>/<app-module>/build.gradle.kts или <project>/<app-module>/build.gradle ).

  2. Чтобы избежать включения функции самообновления полной реализации SDK в ваши сборки Google Play, определите варианты сборки, включая типы сборок или варианты продуктов , которые вы будете распространять через App Distribution .

  3. Объявите зависимость для Android SDK App Distribution в файле 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-beta14")
    
        // ADD the full SDK implementation to the "beta" variant only (example)
        betaImplementation("com.google.firebase:firebase-appdistribution:16.0.0-beta14")
    }

    Java

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

Шаг 3. Настройте обратную связь в приложении

Чтобы получить отзывы от тестировщиков, используйте один из следующих триггеров, позволяющих тестировщикам инициировать обратную связь:

  • Встроенный триггер уведомлений . Android SDK App Distribution может отображать постоянное уведомление, которое тестировщик может нажать в любом месте приложения. Используйте этот триггер, если вы хотите быстрее приступить к работе и вам не нужно настраивать способ предоставления обратной связи вашими тестировщиками.

  • Пользовательский триггер : вы можете создать собственный механизм триггера, например нажатие кнопки или пункта меню в приложении или встряхивание устройства.

Когда вы используете любой из этих триггеров и тестер отправляет отзыв, Android SDK выполняет следующие действия:

  1. Делает снимок экрана текущей активности приложения.

  2. Выполняет проверки, чтобы убедиться, что тестер включил функции тестирования SDK. Если функции тестирования не включены, Android SDK предложит тестировщику войти в App Distribution используя свою учетную запись Google.

  3. Запускает полноэкранное действие, позволяющее тестировщику писать и отправлять свои отзывы.

Вариант 1. Триггер уведомления.

Используйте showFeedbackNotification() для отображения постоянного или текущего уведомления на устройстве тестировщика, которое он может нажать, чтобы инициировать обратную связь. При настройке уведомления вам необходимо указать текст, который будет отображаться тестировщику перед отправкой отзыва, а также уровень прерывания уведомления (соответствующий важности канала уведомления). Если вы хотите уведомить своих тестировщиков о сборе и обработке их данных обратной связи, вы можете использовать текст для такого уведомления.

Когда вы используете showFeedbackNotification() и когда приложение переходит в фоновый режим, уведомление скрывается. Если вы хотите явно скрыть уведомление, используйте cancelFeedbackNotification() . Мы рекомендуем вам поместить showFeedbackNotification() в onCreate() вашего основного действия.

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. Инициализируйте Cloud Functions for Firebase с помощью интерфейса командной строки Firebase .

  2. Напишите и разверните функцию , которая фиксирует событие оповещения обратной связи в приложении из App Distribution и обрабатывает полезную нагрузку события (например, публикует информацию оповещения в сообщении на Discord).

Чтобы увидеть пример функции, показывающей, как отправить новый отзыв в Jira, обратитесь к этому примеру .

Чтобы узнать обо всех событиях оповещений, которые вы можете зафиксировать, см. справочную документацию по оповещениям App Distribution .

,

В этом руководстве описывается, как включить обратную связь в приложении с помощью дополнительного Android SDK Firebase App Distribution , чтобы ваши тестировщики могли отправлять отзывы (включая снимки экрана) непосредственно в приложении.

Прежде чем начать

Если вы еще этого не сделали, добавьте Firebase в свой проект Android .

Шаг 1. Включите API тестера App Distribution .

  1. Откройте консоль Google Cloud и выберите свой проект Firebase.

  2. В разделе API Firebase App Testers нажмите «Включить» .

Шаг 2. Добавьте App Distribution в свое приложение

Android SDK App Distribution состоит из двух библиотек:

  • firebase-appdistribution-api : библиотека только для API, которую вы можете включить во все варианты сборки .
  • firebase-appdistribution : полная реализация SDK (необязательно).

Библиотека только для API позволяет вашему коду вызывать SDK. Вызовы не имеют никакого эффекта, если отсутствует полная реализация SDK.

  1. Объявите зависимость для Android SDK для App Distribution в файле Gradle вашего модуля (на уровне приложения) (обычно <project>/<app-module>/build.gradle.kts или <project>/<app-module>/build.gradle ).

  2. Чтобы избежать включения функции самообновления полной реализации SDK в ваши сборки Google Play, определите варианты сборки, включая типы сборок или варианты продуктов , которые вы будете распространять через App Distribution .

  3. Объявите зависимость для Android SDK App Distribution в файле 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-beta14")
    
        // ADD the full SDK implementation to the "beta" variant only (example)
        betaImplementation("com.google.firebase:firebase-appdistribution:16.0.0-beta14")
    }

    Java

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

Шаг 3. Настройте обратную связь в приложении

Чтобы собрать обратную связь от ваших тестеров, используйте один из следующих триггеров, чтобы тестеры инициировать обратную связь:

  • Встроенный триггер уведомлений : App Distribution Android SDK может отображать постоянное уведомление о том, что тестер может нажать из любой точки приложения. Используйте этот триггер, если вы хотите начать работу быстрее, и вам не нужно настроить, как ваши тестеры предоставляют обратную связь.

  • Пользовательский триггер : вы можете предоставить свой собственный механизм триггера, например, нажать кнопку или элемент меню в вашем приложении или встряхивание устройства.

Когда вы используете любой из этих триггеров, и тестер представляет обратную связь, Android SDK выполняет следующие действия:

  1. Занимает скриншот текущей деятельности приложения.

  2. Запускает чеки, чтобы гарантировать, что тестер включил функции тестирования SDK. Если функции тестирования не включены, Android SDK побуждает тестеров войти в App Distribution со своей учетной записью Google.

  3. Запускает полноэкранную деятельность, которая позволяет тестеру писать и отправлять их отзывы.

Вариант 1: триггер уведомлений

Используйте showFeedbackNotification() , чтобы отобразить постоянное или постоянное уведомление на устройстве тестера, которое они могут нажать, чтобы инициировать обратную связь. Когда вы настраиваете уведомление, вам необходимо предоставить какой -то текст, который будет отображаться для тестера, прежде чем они отправят обратную связь, и уровень прерывания для уведомления (соответствующий важности канала уведомления). Если вы хотите предоставить своим тестировщикам уведомление о сборе и обработке данных их обратной связи, вы можете использовать текст для предоставления такого уведомления.

Когда вы используете showFeedbackNotification() и когда приложение переходит на фоновый разум, уведомление скрыто. Если вы хотите явно скрыть уведомление, используйте cancelFeedbackNotification() . Мы рекомендуем вам поместить showFeedbackNotification() в вашей основной деятельности onCreate() .

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. Включите режим Dev на вашем локальном устройстве:

    adb shell setprop debug.firebase.appdistro.devmode true
  2. Создайте свое приложение как предварительный вариант, который включает в себя полные библиотеки App Distribution , и проверьте, что вы можете запустить обратную связь, используя механизм, реализованный на шаге 3: Настройка обратной связи в приложении . Обратная связь не представлена ​​в режиме разработчика.

  3. После тестирования вы можете отключить режим Dev на своем устройстве:

    adb shell setprop debug.firebase.appdistro.devmode false

Сквозное тестирование

Чтобы проверить, что ваше приложение может отправить обратную связь, создайте свое приложение в качестве предварительного выпуска, который включает в себя полные библиотеки App Distribution , и протестируйте вашу реализацию после этих шагов:

  1. Загрузите новое выпуск приложения в App Distribution .

  2. Распределите выпуск приложения в учетную запись, которая у вас есть разрешение на доступ.

  3. Загрузите приложение приложения через веб App Distribution или Android Tester.

  4. Запуск обратной связи с использованием механизма, реализованного на шаге 3: Настройка обратной связи в приложении .

  5. Убедитесь, что вы подписались с той же учетной записью, на которую вы распространяли выпуск приложения, и отправляете отзывы.

  6. Посмотреть свои отзывы на карточке нового релиза в консоли Firebase .

Чтобы узнать, как решить общие проблемы, такие как тестеры, не могут запустить обратную связь в приложении, см. Включение функций тестирования с SDK .

Шаг 5: Управление обратной связью тестера

После того, как вы позволите вашим тестерам отправлять обратную связь, вы можете использовать следующие инструменты для просмотра и действовать в соответствии с этой обратной связью:

Посмотреть и удалить обратную связь в консоли Firebase

Вы можете просмотреть и удалить отзывы пользователей, включая скриншоты, открыв вкладку «Обратная связь Tester» под определенным выпуском в консоли Firebase . Отзывы пользователей организованы с помощью релиза, поэтому вы можете подтвердить версию, к которой применяется обратная связь.

После просмотра отзывов пользователя вы можете удалить эту обратную связь, нажав кнопку «Удалить обратную связь» . Удаленная обратная связь удаляется из вашего выпуска.

Получить оповещения по электронной почте для новых отзывов

Чтобы активно узнать о новых отзывах тестеров, вы можете получать оповещения по электронной почте, когда тестер подает отзывы. Оповещение по электронной почте включает в себя письменную обратную связь, предоставленную вашему тестеру, и ссылку на любые скриншоты, которые они отправили.

Чтобы получить предупреждения по электронной почте App Distribution по этому механизму по умолчанию, вы должны иметь разрешение firebase.projects.update . Следующие роли включают это требуемое разрешение по умолчанию: администратор Firebase или владелец проекта или редактор .

По умолчанию каждый участник проекта, у которого есть необходимые разрешения на получение оповещений по электронной почте, получит электронное письмо, когда будет представлен новый отчет отзывов. Члены проекта могут отдельно отказаться от этих оповещений.

Чтобы отключить оповещения по электронной почте, см. Получите оповещения о пожарной базе .

Отправить новые отзывы сторонним инструментам

Вы также можете отправлять оповещения App Distribution в предпочтительный канал уведомлений вашей команды, используя Cloud Functions for Firebase . Например, вы можете написать функцию, которая отражает событие предупреждения для новой обратной связи в приложении и публикует информацию о предупреждении в стороннем сервисе, такой как Discord, Slack или Jira.

Чтобы настроить расширенные возможности оповещения, используя Cloud Functions for Firebase , выполните следующие действия:

  1. Установите Cloud Functions for Firebase , которая включает в себя следующие задачи:

    1. Скачать node.js и npm.

    2. Установите и войдите в CLI Firebase .

    3. Инициализировать Cloud Functions for Firebase с использованием CLI Firebase .

  2. Напишите и разверните функцию , которая фиксирует событие предупреждения о обратной связи в приложении из App Distribution и обрабатывает полезную нагрузку события (например, публикует информацию о предупреждении в сообщении о Discord).

Чтобы увидеть функцию примера, которая показывает, как отправить новую обратную связь в Джиру, см. В этом примере .

Чтобы узнать обо всех событиях предупреждения, которые вы можете захватить, см. Справочную документацию для предупреждений App Distribution .