Рекомендации по сертификации аудиопереключателей

Подготовка к сертификации

  • Подготовьте тестовые устройства.
    • Вам потребуется 5 устройств Android.
      • Эти устройства должны включать в себя:
        • По крайней мере один Android T (13) и один Android V (15).
        • По крайней мере, один Samsung и один Pixel.
        • Например:
          • 1. OnePlus (Android 10).
          • 3 Samsung (Android 11, 12, 13).
          • 1 Pixel (Android 15).
    • Одно устройство без аудиопереключателя:
      • Любой iPhone, ПК, ноутбук с поддержкой Bluetooth (BT) или телефон Android, у которого отключен переключатель звука.
        • Вы можете отключить функцию переключения звука в настройках сведений об устройстве Bluetooth.
      • Для выполнения многоточечного (MP) тестового примера 2.8, помимо 5 тестовых телефонов, требуется устройство без аудиопереключателя.
  • Чтобы отображать отладочные уведомления на тестовых телефонах, присоединитесь к тестовой группе переключения звука, используя свои тестовые учетные записи.

    • Это также позволяет Google собирать тестовые данные через Google Analytics.

Классический с A2DP+HFP

  • Убедитесь, что на всех устройствах Android установлена ​​версия GmsCore 23.xx.xx или более поздняя.

BLE с LE Audio

  • По крайней мере два из эталонных телефонов должны поддерживать технологию LE Audio.
    • Например, один телефон Samsung и один телефон Pixel, поддерживающие технологию LE Audio.
  • Убедитесь, что на всех устройствах Android установлена ​​версия GmsCore 24.33.xx или более поздняя.

Критерии сертификации

  • Показатель успешности переключения целевых устройств должен превышать 95% во всех тестовых случаях.
  • В тестах, требующих переключения, подключение профиля и активация переключателя должны завершиться в течение 3 секунд после срабатывания звуковых событий как минимум в 75% случаев.

Классический с A2DP+HFP

Самопроверку необходимо проводить в следующих комбинациях:

  • Телефон A = Android S (12) + Телефон B = Android T (13)
  • Телефон A = Android T (13) + Телефон B = Android S (12)

BLE с LE Audio

Самопроверку необходимо проводить в следующих комбинациях:

  • Телефон A: BT Classic, Телефон B: BT Classic
  • Телефон A: LE Audio, Телефон B: BT Classic
  • Телефон A: BT Classic, Телефон B: LE Audio

При желании провайдерам, поддерживающим двойное аудиосоединение LE, следует провести тестирование:

  • Телефон A: LE Audio, Телефон B: LE Audio

Руководство по тестированию

Подготовка тестируемого устройства (DUT).

  • Убедитесь, что устройство Bluetooth ранее не было сопряжено ни с одним телефоном, подключенным к тестовой учетной записи Google.
    • Если устройство было сопряжено с тестовой учетной записью Google, выполните следующие действия, чтобы снять сопряжение:
      • В парных устройствах:
        • Перейдите в настройки Bluetooth.
        • Выберите «Забыть устройство».
        • Включение и выключение режима «В самолёте».
    • Убедитесь, что параметр "Автоматическое сохранение устройств" включен.
      • Этот переключатель по умолчанию выключен.
      • Эту опцию можно найти в Настройках > Google > Устройства > Сохраненные устройства (одно на каждое тестируемое устройство).
    • Переведите Bluetooth-устройство в режим сопряжения.
    • Выполните сопряжение первого устройства Bluetooth (A).
    • Последующие устройства Bluetooth можно подключить к другим устройствам (B, C, D и т. д.).

Объем

  • Для всех гарнитур тесты можно выполнить на различных вкладках в отчете о самотестировании звука BT Classic или BT LE .
  • Гарнитуры, поддерживающие только режим SinglePoint (SP), работают в следующих режимах:
    • Вкладка Generic_test.
  • Наушники, поддерживающие режим MP, работают под управлением следующих устройств:
    • Вкладка Generic_test.
    • Вкладка Multipoint_only.
  • Наушники MP, которые можно переключать в режим SP, работают под управлением следующих программ:
    • Вкладка Generic_test с отключенной функцией MP.
    • Вкладка Generic_test с включенной функцией MP.
    • Вкладка Multipoint_only с включенной функцией MP.

Заполнение отчета о самоотдыхе и отчета о самотестировании.

  • Сделайте копию одного из отчетов о самодиагностике аудиосистемы BT Classic или BT LE .
  • Выполните все тестовые случаи как минимум дважды.
  • Тесты следует выполнять в следующем формате:

Классический с A2DP+HFP

  • Основным тестируемым устройством будет устройство B.
    • Введите данные устройства B в поля «Телефон» и «ОС» в верхней части шаблона .

Пример тестового случая:

  • Тестовые телефоны:

    • Устройство 1: Samsung (Android 13)
    • Устройство 2: Pixel (Android 12 или 13) и другие.
  • Выполненные тесты:

    • Запуск 1. Устройство A = Samsung S10+ (12), Устройство B = Pixel 7 Pro (13), столбец D: Телефон = Pixel 7 Pro, ОС = Android 13
    • Запуск 2. Устройство A = Pixel 7 Pro (13), Устройство B = Pixel 6 (12), столбец E: Телефон = Pixel 6, ОС = Android 12

Пример пройденного теста в шаблоне самопроверки:

This picture shows the results of an example test

BLE с LE Audio

  1. Устройство A = Android V (15) + Устройство B = Android T (13)
  2. Устройство A = Android T (13) + Устройство B = Android V (15)
  3. Устройство A = Android T (13) + Устройство B = Android S (12)
  4. Устройство A = Android T (15) + Устройство B = Android V (15)
  5. Основным тестируемым устройством будет устройство B.
    • Введите данные устройства B в поля «Телефон» и «ОС» в верхней части шаблона .

Пример тестового случая:

  • Тестовые телефоны:

    • Устройство 1: Samsung (Android 13)
    • Устройство 2: Pixel (Android 15) и другие.
  • Выполненные тесты:

    • [LEA+BT]: Устройство A = Pixel 8 (15), Устройство B = Pixel 7 Pro (13), столбец D: Телефон = Pixel 7 Pro, ОС = Android 13
    • [BT+LEA]: Устройство A=Pixel 7 (13), Устройство B=Pixel 8 (Android 15), столбец E: Телефон=Pixel 8, ОС=Android 15
    • [BT+BT]: Устройство A=Pixel 7 Pro (13), Устройство B=Samsung S10+ (12), столбец E: Телефон=Samsung S10+, ОС=Android 12
    • [LEA+LEA]: Устройство A=Pixel 8 (15), Устройство B=Pixel 8 (15), столбец E: Телефон=Pixel 8, ОС=Android 15

Пример пройденного теста в шаблоне самопроверки:

This picture shows the results of an example test

Аудиособытия:

  • Проверяются 4 типа аудиособытий, и рекомендуются следующие приложения для тестирования:

    1. Вызов:
      1. Встроенное мобильное приложение.
    2. VoIP: Подойдет любое VoIP-приложение, например:
      1. Приложение для проверки аудиопереключателей.
      2. Фейсбук Мессенджер.
      3. Линия.
      4. WhatsApp.
      5. Google Meet.
      6. Google Meet.
    3. Медиафайлы: Подойдет любой аудиоплеер, например:
      1. Приложение для проверки аудиопереключателей.
      2. Музыка с YouTube.
      3. Apple Music.
      4. Spotify.
      5. Google Podcasts.
    4. Игра:
      1. Приложение для проверки аудиопереключателей.

Отладочная информация:

  • Уведомления включаются после присоединения к группе fp-sass-partner-test . Вот несколько примеров:

    • Последнее уведомление от государства:

    Figure 1: This shows the 'latest state notification' message.

    • Нет уведомления о переключении:

    Figure 2: This shows the 'no switch notification' message.

    • Уведомление о задержке переключения:

    Figure 3: This shows the 'switch latency notification' message.

Измерение задержки

  • Существует два типа задержки переключения:
    1. Подключение профиля Bluetooth к отключенному устройству Seeker.
      • Это включает все случаи с одной точкой доступа, а также некоторые случаи с несколькими точками доступа, в которых целевое устройство Seeker (устройство B) отключено.
    2. Переключение активного подключенного устройства Seeker.
      • Это включает в себя некоторые случаи MP, когда целевое устройство Seeker (устройство B) уже подключено.
  • Существует два способа получения информации о задержке:
    1. Всю задержку можно вывести с помощью команды adb.
      • Подробности см. в разделе «Задержка дампа» .
      • Эта команда позволяет получить и записать данные о задержке после завершения как минимум одного тестового случая.
    2. Используя приложение для проверки аудиопереключателей .
      • Приложение, запущенное на целевом устройстве Seeker, отобразит задержку после переключения.
      • Если переключатель отсутствует, приложение отобразит причину «нет переключателя».

Приложение для тестирования аудиопереключателя:

  • Использование приложения для запуска аудиособытий VoIP/медиа/игр во время самотестирования упростит настройку теста и уменьшит задержку событий в устройстве Seeker.
    • Последнюю версию можно скачать здесь .
    • Для тестирования LE Audio VoIP необходимо вручную включить политику: > adb root > adb shell settings put global hidden_api_policy 1 > adb reboot
  • Установка приложения:
    • Скопируйте APK-файл на свой тестовый телефон и откройте его.
    • В качестве альтернативы используйте adb install audio_test_app.apk .
  • Если вы видите диалоговое окно с запросом на предоставление доступа к уведомлениям:
    1. Нажмите "ОК"
    2. Выберите "FP SASS test" в списке приложений.
    3. Разрешить доступ к уведомлениям.

Обзор приложения:

This picture is an example of the app running

  • Целевой поставщик

    • При нажатии на эту кнопку отобразится список сопряженных устройств Bluetooth. Выберите то, которое хотите протестировать.
    • Кнопки «Подключить» и «Отключить» работают так же, как и в подробной информации об устройстве в настройках Bluetooth.
  • Текущее состояние

    • В этом поле отображается последнее состояние соединения, полученное искомым пользователем от провайдера с использованием BLE-рекламы или потока событий.
    • Здесь также отображаются отладочные уведомления о переключении звука.
  • Тип искателя

    • Эта опция используется для переключения устройства между аудиопотоками.

Тип аудио

Классический с A2DP+HFP

  • VoIP
    • Выбор этого режима изменит режим воспроизведения звука на AudioManager.MODE_IN_COMMUNICATION и вызовет AudioManager.startBluetoothSco , после чего будет воспроизведен звук с USAGE_VOICE_COMMUNICATION .
    • Тип потока — STREAM_VOICE_CALL .
    • Состояние подключения провайдера должно измениться на CONNECTED_HFP в течение 5 секунд.
  • СМИ
    • В этом режиме будет воспроизводиться аудио с поддержкой AVRCP. Тип использования аудио: USAGE_MEDIA .
    • Состояние подключения провайдера должно измениться на CONNECTED_A2DP_WITH_AVRCP в течение 5 секунд.
    • При запуске или остановке состояние соединения может кратковременно переключаться в CONNECTED_A2DP_ONLY .
  • Игра

    • Выбор этого режима воспроизводит звук, не поддерживающий AVRCP. Тип использования звука: USAGE_GAME .
    • Состояние подключения провайдера должно измениться на CONNECTED_A2DP_ONLY в течение 5 секунд.

BLE с LE Audio

  • VoIP

    • Выбор этого режима изменит режим воспроизведения звука на AudioManager.MODE_IN_COMMUNICATION и воспроизведет звук с параметром USAGE_VOICE_COMMUNICATION .
    • Тип потока — STREAM_VOICE_CALL .
    • Состояние подключения провайдера должно измениться на CONNECTED_LE_AUDIO_CALL в течение 5 секунд.
  • СМИ

    • При выборе этого режима будет воспроизводиться аудиопоток типа STREAM_MUSIC . Тип использования аудио: USAGE_MEDIA .
    • Состояние подключения провайдера должно измениться на CONNECTED_LE_AUDIO_MEDIA_WITH_CONTROL в течение 5 секунд.
    • При запуске или остановке состояние соединения может кратковременно переключаться в CONNECTED_LE_AUDIO_MEDIA_WITHOUT_CONTROL .
  • Игра

    • Выбор этого режима воспроизводит звук, над которым пользователь не имеет прямого контроля. Тип использования звука: USAGE_GAME .
    • Состояние подключения провайдера должно измениться на CONNECTED_LE_AUDIO_MEDIA_WITHOUT_CONTROL в течение 5 секунд.
  • Кнопки «Воспроизведение» и «Стоп»

    • Кнопки PLAY и STOP запускают или останавливают воспроизведение аудио.
  • Результат переключения

    • В этом поле отображается задержка при подключении и переключении. Также отображается причина отказа в переключении, если было инициировано звуковое событие, но переключение не произошло.
    • Задержка измеряется в миллисекундах (мс).
    • Как правило, задержка измеряется от момента срабатывания аудиопереключателя до получения сигнала о подключении профиля Bluetooth или события уведомления о многоточечном переключении.
    • Коммутаторы, срабатывающие по требованию провайдера, измеряют задержку с момента начала воспроизведения звука.

Задержка дампа

  • Следующая команда позволяет пользователю получать данные об уровне задержки при выполнении ручных тестов: adb shell dumpsys activity service com.google.android.gms/.nearby.discovery.service.DiscoveryService
    • Результаты измерений задержки отображаются в разделе SwitchHistory модуля NearbyDeviceManager :
            NearbyDeviceManager
              Nearby Sass device count: 1
                Sass device - address:XX:XX:XX:XX:XX:XX, name:Googler's Pixel Buds, accountKey:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, modelId:6edaf7
                  SwitchHistory
                    15:30:21:166 - 15:30:25:201, latency 3035ms, Succeed, SASS_TRIGGERED_CONNECT, SASS switch, A2DP
                    15:34:58:568 - 15:34:58:568, latency 0ms, Succeed, SWITCH_ACTIVE_TO_SELF, SASS switch, HFP
                    15:36:26:615 - 15:36:31:603, latency 1988ms, Succeed, SASS_TRIGGERED_CONNECT, SASS switch, A2DP
                    15:37:56:108 - 15:37:56:250, latency 142ms, Succeed, SWITCH_ACTIVE_TO_SELF, SASS switch, A2DP"
  • Любой переключатель, который GmsCore не может измерить (например, активный переключатель для HFP), будет записан как имеющий задержку 0 мс.

Справочная информация о шаблонах логов:

Examples of logs from the latency test

Известные проблемы:

Ниже перечислены известные ошибки, вызываемые программой «Искатель»:

  1. Некорректное переключение звука в игре.
    • При запуске игр телефоны Samsung будут устанавливать состояние соединения в CONNECTED_A2DP_WITH_AVRCP вместо CONNECTED_A2DP_ONLY .
    • В некоторых играх (например, Candy Crush) фоновая музыка может воспроизводиться повторно, вызывая новое звуковое событие без участия пользователя. Подключенные телефоны могут постоянно переключать звук на каждом телефоне, запускающем игру.