跳到主要内容

获取工作模式

读取设备当前的 WorkMode 值。

前置条件

  • 设备已连接且就绪。
  • 设备支持 DeviceWorkModeAPI

API 参考

框架

AIBuds.xcframework

导入

Swift
import AIBuds

协议

Swift
/// The protocol for device work mode API.
protocol DeviceWorkModeAPI: DeviceAPI {
    /// The current work mode of the device.
    var workMode: WorkMode { get }
}

属性

属性类型描述
workModeWorkMode / AIBudsWorkMode设备上报的当前工作模式。

返回值

workMode 是同步只读属性,不使用完成回调。

使用示例

Swift
import AIBuds

guard let device = device as? DeviceWorkModeAPI else {
    print("Device does not support work modes")
    return
}

switch device.workMode {
case .normal:
    print("Normal mode")
case .game:
    print("Game mode")
@unknown default:
    print("Unknown work mode")
}

错误处理

该属性没有异步错误结果。请处理协议不符合和未知枚举值。

最佳实践

  1. 直接读取属性:不要额外封装异步的获取工作模式方法。
  2. 处理未知值:为向前兼容保留 unknown/default 分支。
  3. 监听设备更新:SDK 通过设备代理报告工作模式变化时刷新 UI。

注意事项

  • 公开 SDK 当前定义 normalgame 两种工作模式。
  • 更改模式使用 setWorkMode(_:completion:),与该只读属性分开。