帮助用户管理设备会话状态、暂停恢复流程与在线可用性监控。
该技能材料显示其为开源的提示/文档型 iOS 集成指南,本身未声明需要密钥、远程端点或额外系统权限。基于现有材料,整体风险较低,但仓库星标为 0、维护状态未知,供应链可信度仍需人工复核。
材料与客观检查项均表明无需密钥或环境变量,未见 token、API key 或账号凭证处理逻辑,因此凭证泄露与滥用风险低。
未声明任何远程端点;内容主要描述设备会话状态、蓝牙连接变化与本地 SDK 使用方式,未见将用户数据外发到第三方服务的说明。
系统检查项标记为 prompt-only,材料也仅包含 Swift 示例与集成说明,未见要求在本机启动额外进程、执行脚本或申请超出声明功能的系统执行权限。
功能围绕设备会话、可用设备列表和流状态,按其用途通常会接触设备状态与传感/流相关数据;这属于该类 SDK 的常规能力。材料未见文件系统读写、批量数据收集或过度授权的明确红旗,但实际接入时仍应核对 iOS 权限与可访问数据范围。
来源为 GitHub 开源仓库,可审计性是积极因素;但许可证未声明、社区采用为 0 star、维护状态未知,降低了来源可信度。当前不足以定为高风险,但建议在使用前复核仓库归属、提交历史与依赖情况。
复制安装指令,让 AI 自动完成配置 · 推荐新手
请帮我安装 askskill 上的 "session-lifecycle" 技能: 1. 下载 https://raw.githubusercontent.com/facebook/meta-wearables-dat-ios/main/plugins/mwdat-ios/skills/session-lifecycle/SKILL.md 2. 保存为 ~/.claude/skills/session-lifecycle/SKILL.md 3. 装好后重载技能,告诉我可以用了
请为设备会话设计一个状态机,包含初始化、活跃、暂停、恢复、断开和超时状态,并说明每个状态的触发条件与恢复策略。
一份清晰的会话状态机说明,包含状态定义、转换条件和异常处理建议。
帮我制定设备会话的暂停与恢复逻辑,包括用户手动暂停、网络中断自动暂停、恢复后的重试机制,以及避免重复执行任务的方案。
一套可实现的暂停恢复流程建议,覆盖触发规则、重试策略与幂等处理。
请为设备会话提供可用性监控方案,包含心跳检测、离线判定阈值、告警触发规则,以及适合展示在运维面板中的关键指标。
一份会话可用性监控方案,包含监控指标、告警条件和面板展示建议。
Guide for managing device session states in DAT SDK integrations.
The DAT SDK runs work inside sessions. Meta glasses expose two experience types:
Your app observes session state changes — the device decides when to transition.
| State | Meaning | App action |
|---|---|---|
idle | Session created but not started | Call start() when ready |
starting | Session is connecting to the device | Show connecting state |
started | Session active and ready for capabilities | Add or resume work |
paused | Temporarily suspended by the device | Hold work, may resume |
stopping | Session is cleaning up | Wait for terminal state |
stopped | Session inactive and terminal | Free resources, create a new session to restart |
let session = try Wearables.shared.createSession(deviceSelector: AutoDeviceSelector(wearables: Wearables.shared))
try session.start()
Task {
for await state in session.stateStream() {
switch state {
case .started:
// Confirm UI shows session is live
case .paused:
// Keep connection, wait for started or stopped
case .stopped:
// Release resources, allow user to restart
default:
break
}
}
}
A Stream is a capability attached to a started DeviceSession:
stopped → waitingForDevice → starting → streaming → paused → stopped
guard let stream = try session.addStream(config: StreamConfiguration()) else { return }
let token = stream.statePublisher.listen { state in
Task { @MainActor in
// React to state changes
}
}
The device changes session state when:
When a session is paused:
startedYour app should not attempt to restart while paused — wait for started or stopped.
Monitor device availability to know when sessions can start:
Task {
for await devices in Wearables.shared.devicesStream() {
// Update list of available glasses
}
}
Key behaviors:
stoppedstarted, paused, stopped)stoppedpaused — wait for system to resume or stop帮助开发者完成 Meta 眼镜 SDK 安装配置并建立首次连接。
帮助用户构建含摄像头串流与拍照功能的完整 DAT 应用示例。
帮助开发者掌握 DAT SDK 的 Swift 规范、命名与异步开发模式
连接摄像头进行视频流、抓取画面并灵活配置分辨率与帧率。
帮助你定位常见故障、兼容性问题并诊断状态机异常
帮助开发者梳理 Meta AI 应用注册与相机权限申请流程
帮助开发者管理会话与流状态,并处理暂停恢复及设备可用性监控
帮助排查当前 Amplifier 会话中的配置错误、调用失败与异常行为。
帮助用户配置摄像头会话与视频流,并完成拍照及分辨率帧率设置
帮助多台设备上的 Claude 会话共享状态并协同推进复杂任务
帮助排查常见故障、版本兼容与会话流诊断问题,提升开发调试效率
用于测试 XR 会话生命周期与模式切换,排查进入退出及状态异常问题。