iOS SDK 1.0.0 接入总览
SDK Version: 1.0.0
Platform: iOS
本套文档面向在自己的 iOS App 中接入 xTalk 能力的开发者,覆盖六个独立 Swift SDK 产品:
| 产品 | 职责 |
|---|---|
XTalkBleSdk | BLE 扫描、连接、GATT 就绪、AT/RF 收发与设备信息查询 |
XTalkDeviceAuthSdk | 与传输实现解耦的 AT 编码探测、Challenge 认证与 DID 读取 |
XTalkMeshSdk | Mesh 文本/语音、好友、位置、群邀请、ACK 与路由 |
LowLatencyPtt | 独立低时延半双工语音与 RF 恢复 |
XTalkFileTransferSdk | 文件字节、图片转码、分片、确认和恢复 |
XTalkOtaSdk | TurMass 与 BT5632F 固件升级、进度和取消 |
本次 iOS SDK 1.0.0 没有独立 Device Init 产品。认证成功后的业务参数初始化由客户业务层或另行交付的产品负责;不要把初始化参数、网络请求或业务状态塞入认证 transport。
模块边界
| 能力 | BLE | Auth | 客户 App |
|---|---|---|---|
| 扫描、连接、特征发现、通知订阅 | 负责 | 不负责 | 展示状态、选择设备 |
| AT 编码与事务串行化 | 负责 | 通过 transport 使用 | 不自行并发写特征 |
| Challenge、签名校验、DID 读取 | 不负责 | 负责 | 保存成功结果 |
| 用户授权说明、重试策略、页面生命周期 | 提供状态 | 提供状态 | 负责 |
| 认证后的业务配置 | 提供 AT/RF 通道 | 不负责 | 负责 |
推荐接入顺序
单独获取正式 Swift Package
→ 加入 Xcode 工程并配置蓝牙权限
→ 创建 XTalkBleClient
→ 扫描并连接
→ 等待 atReady
→ 用 BLE client 适配 DeviceAuthTransport
→ 执行认证并只在成功后保存 DID
→ 开始客户业务
→ disconnect / teardown
成功判定
connectionState == .connected只代表 BLE 链路建立。atReady == true才可以发送 AT、RF 或开始认证。deviceControlReady == true才适合查询电量和版本。authenticate()成功返回才代表认证完成;失败时必须停止受保护业务。disconnect()用于可再次连接的临时断开;teardown()用于永久结束当前 client。