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

Получение состояния работы

Получите текущее значение WorkState устройства.

Предварительные условия

  • Устройство подключено
  • Устройство поддерживает DeviceWorkStateAPI

Справочник API

Фреймворк

AIBuds.xcframework

Импорт

Swift
import AIBuds

Протокол

Swift
/// The protocol for device work state API.
protocol DeviceWorkStateAPI: DeviceAPI {
    /// The current working state of the device.
    var workState: WorkState { get }
}

Свойства

СвойствоТипОписание
workStateWorkState / AIBudsWorkStateТекущее состояние работы, сообщаемое устройством.

Возвращаемое значение

workState — синхронное свойство только для чтения; оно не возвращает составную модель состояния.

Примеры использования

Swift
import AIBuds

guard let device = device as? DeviceWorkStateAPI else {
    print("Device does not expose a work state")
    return
}

let state = device.workState
print("Current work state: \(state.description)")

Обработка ошибок

Обработчик завершения и результат ошибки отсутствуют. Учитывайте неподдерживаемый протокол и варианты перечисления unknown и reserved.

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

  1. Читайте свойство напрямую: не представляйте этот API как асинхронный запрос состояния.
  2. Считайте состояние изменяемым: перечитывайте его перед отображением текущей активности.
  3. Обрабатывайте все варианты: состояния охватывают подключение, звонки, воспроизведение, съёмку, передачу, трансляцию, OTA, выключение и тестирование.

Примечания

  • WorkState — одно значение перечисления; оно не содержит данные о заряде, зарядке, ношении или воспроизведении.
  • SDK не определяет модель результата WorkStatus или метод getWorkStatus.