AI 服务分析仪表盘
可选的 AIBudsAIDashboard 模块会启动一个本地 Web 仪表盘,用于查看保存在 iOS 设备上的 AI 会话报告。无需在宿主 App 中额外开发报告页面,即可排查 AI 对话、AI 录音、翻译和同声传译问题。
AI 服务分析仪表盘是开发与诊断工具。它不会配置 AI 服务商或启动 AI 会话,也不能替代各项 AI 功能指南。
受控的仪表盘诊断流程
AI 流程完成后会生成并保存报告;开发者可通过仅在开发环境启用的本地服务,在网络互通的浏览器中查看报告。
架构边界
本地服务运行在宿主 App 进程中。能否正常访问取决于 App 生命周期、网络连通性、端口设置、Web 资源包是否完整,以及报告保留策略。
打包与生命周期
直接集成时,必须引入 AIBudsAIDashboard 及其 AIBudsAIDashboard.bundle Web 资源。AIBudsAllInOne 也提供仪表盘生命周期接口;请沿用 App 已选择的管理方式,不要通过两套入口重复启动服务。
仅由一个应用级对象负责在开发环境中启动服务,并在诊断结束后将其关闭。
- Swift
- Objective-C
#if DEBUG
import AIBudsAIDashboard
if !AIDashboardSDK.isRunning {
let accepted = AIDashboardSDK.start(withPort: 3000)
if !accepted { print("AI Dashboard start was rejected") }
}
#endif#if DEBUG
@import AIBudsAIDashboard;
if (![AIBudsAIDashboardSDK isRunning]) {
BOOL accepted = [AIBudsAIDashboardSDK startWithPort:3000];
if (!accepted) {
NSLog(@"AI Dashboard start was rejected");
}
}
#endif声明请参阅 AIDashboardSDK。
访问与验证
SDK 启动时会将仪表盘访问地址写入日志。请在能与 iOS 设备网络互通的浏览器中打开该地址。返回的 Bool 只表示启动请求是否被接受,不能代表服务已经可用;当前公开 API 不会返回实际绑定的 URL、网络接口、端口冲突原因或服务器错误。
请确认服务运行状态、日志中的访问地址、是否出现资源包警告、浏览器能否连接,以及设备上是否已有受支持 AI 会话生成的报告。仪表盘为空通常表示尚未保存任何报告。
安全与隐私边界
:::warning 仅用于开发和受控诊断 当前仪表盘通过本地 HTTP 服务提供访问,公开 API 尚不支持配置身份验证、TLS 或绑定网络接口。报告可能包含转写内容和敏感会话数据。除非安全与隐私评审已经确认网络暴露范围和数据保留方式,否则不要在生产环境中启用。 :::
- 通过构建配置将其限制在 Debug 或内部测试版本中。
- 使用可信且隔离的网络。
- 不要将访问地址或凭据上报到埋点系统或共享日志中。
- 诊断结束后立即关闭本地服务。
- 对会话报告执行与底层 AI 数据一致的保留和删除策略。
故障排除
| 现象 | 检查项 |
|---|---|
| 启动请求被拒绝 | 服务可能已经运行;确保只有一个对象负责其生命周期。 |
| 页面资源无法加载 | 确认构建后的 App 中包含 AIBudsAIDashboard.bundle。 |
| 浏览器无法连接 | 检查日志中的地址、端口、网络连通性和本地网络权限。 |
| 仪表盘为空 | 完成受支持的 AI 会话,并确认会话报告已经保存。 |
| 诊断结束后服务仍在运行 | 由启动服务的同一个对象将其关闭。 |