Перейти к основному содержимому

Распознавание ношения

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

Возможности

Реализация с помощью AI

Разработка с AI

Реализуйте этот сценарий с AI

Используйте официальный навык «Управление обнаружением ношения AIBuds» и адаптируйте сценарий к приложению.

Прочитайте и выполните инструкции https://docs-aibuds.github.io/ru/skills/manage-aibuds-wear-detection. Используйте этот навык, чтобы реализовать «Управление обнаружением ношения AIBuds» в данном iOS-проекте и проверить результат.
Открыть официальный навык

Начало работы

  1. Подключите устройство — дождитесь подключения и готовности.
  2. Проверьте протокол — убедитесь в поддержке DeviceWearDetectionAPI.
  3. Получите возможность — по wearDetectionCapability определите, поддерживается ли функция и можно ли её настраивать.
  4. Получите текущее состояние — прочитайте isWearDetectionEnabled и wearStatus.
  5. Настраивайте при поддержке — вызывайте setWearDetection(enabled:completion:) только для устройства с настраиваемой функцией.

Основные понятия

Возможности регулировки

WearDetectionCapability определяет три уровня:

ЗначениеСмысл
.noneРаспознавание ношения не поддерживается.
.supportedNotConfigurableФункция поддерживается, но менять её состояние через этот API нельзя.
.supportedAndConfigurableФункция поддерживается, её можно включать и выключать.

Состояние

  • isWearDetectionEnabled показывает, включено ли распознавание сейчас.
  • WearStatus сообщает неизвестное состояние, отсутствие ношения, только левый, только правый или оба наушника.
  • Возможность, включённое состояние и факт ношения — независимые значения; не выводите одно из другого.

Справочник протоколов

Распознавание ношения доступно через DeviceWearDetectionAPI:

Swift
guard let device = device as? DeviceWearDetectionAPI else {
    print("Device does not support DeviceWearDetectionAPI")
    return
}

Рекомендации

  1. Проверяйте возможность до настройки: менять состояние можно только при .supportedAndConfigurable.
  2. Используйте текущие свойства: читайте снимки SDK, не создавая несуществующие методы запросов.
  3. Следите за изменениями: используйте обработчики DeviceDelegate для включённого состояния и ношения.
  4. Явно обрабатывайте неизвестное состояние: не смешивайте .unknown с .notWearing.

Примечания

  • Наличие варианта перечисления в SDK не гарантирует его поддержку каждым устройством.
  • SDK не гарантирует автоматическое управление воспроизведением при изменении ношения; поведение приложения определяется требованиями продукта.
  • Demo SDK читает возможность и включённое состояние из DeviceWearDetectionAPI и показывает настройку только при её поддержке.