用途:DockKit 用于让相机类 App 接入可电动旋转的相机支架和云台,通过物理转动 iPhone 追踪拍摄对象。系统默认提供主体检测与构图,App 也可接管追踪、直接控制电机或调整构图。
主要能力:通过 DockAccessoryManager 观察配件连接状态(.docked/.undocked);系统追踪默认开启,可检测人脸与人体并驱动电机保持主体在画面内;支持点击选择主体或按 UUID 锁定主体;可关闭系统追踪,用自定义 ML 或 Vision 结果以 10-30 fps 提供 Observation(.humanFace/.humanBody/.object);支持构图模式(automatic/center/left/right)与感兴趣区域;可直接设置角速度、目标朝向、运动限制,并读取运动状态;提供 .yes/.no/.wakeup/.kapow 动画;iOS 18+ 可读取追踪状态(说话置信度、看镜头置信度、显著性排名)与电池状态;可处理支架物理按键事件(快门、翻转、变焦、自定义按钮)。
使用方式:import DockKit;订阅 accessoryStateChanges 检测连接;需要自定义追踪或电机控制前先 setSystemTrackingEnabled(false),动画结束后恢复;自定义观测需配合 AVFoundation 相机管线,rect 使用左下原点归一化坐标;相机信息需匹配当前采集设备。
限制:必须有兼容 DockKit 的实体配件和真机,模拟器无法连接;无需特殊权限或 Info.plist 键;追踪状态不跨 App 终止、重启或前后台切换持久化,需显式重设;直接控制电机前必须关闭系统追踪;自定义观测频率应为 10-30 fps;所有 DockKit 枚举 switch 需处理 @unknown default。具体配件型号、价格与平台支持暂未提供。