用途:AudioAccessoryKit 为第三方音频配件提供自动音频切换与智能音频路由能力,让配套 App 向系统注册配件、上报设备佩戴位置并声明能力,使系统能无缝切换音频输出。适用于 iOS 26.4+ / iPadOS 26.4+,Swift 6.3。
主要能力:核心类型为 AccessoryControlDevice,负责注册、能力声明与状态更新。能力为选项集,含 .audioSwitching(支持自动音频切换)与 .placement(可上报物理位置),可组合使用;仅音频切换也可工作,但提供位置能让路由决策更智能。位置取值有 .inEar、.onHead、.overTheEar、.offHead。对于同时连接多个蓝牙设备的配件,可设置主/次音频源设备标识(蓝牙地址 Data),以便系统从合适来源路由音频。
使用方式:配件须先通过 AccessorySetupKit 经蓝牙配对,得到 ASAccessory 对象,再在 App 中同时导入两个框架。注册示例:let capabilities: AccessoryControlDevice.Capabilities = [.audioSwitching, .placement]; try await AccessoryControlDevice.register(accessory, capabilities)。用 AccessoryControlDevice.current(for:) 获取设备与当前配置,用 update(_:) 推送配置变更(异步、可抛错)。位置变化、蓝牙连接状态变化时应及时更新。
限制与注意:该框架为 iOS 26.4 新增,处于 Beta 阶段,正式版前可能变化,依赖具体 API 细节前应重新核对 Apple 文档。未配对即注册、声明 .placement 却不更新位置、忽略多设备连接状态变化、不处理 .invalidated 错误均为常见错误。错误类型包括 .accessoryNotCapable、.invalidRequest、.invalidated、.unknown,需完整处理含 @unknown default。部署目标须设为 iOS 26.4+ 或 iPadOS 26.4+。具体收费、价格等信息暂未提供。