帮助开发者管理会话与流状态,并处理暂停恢复及设备可用性监控
该技能材料显示其为纯提示/文档型内容,本身不要求密钥、未声明远程端点,也未包含可执行安装步骤,整体风险较低。结合开源 GitHub 来源与一定社区采用度,未见明确高风险红旗,但其所依托的 Android/DAT SDK 实际运行时能力仍需结合宿主应用权限单独评估。
材料明确标注无需密钥或环境变量;README 仅描述会话生命周期与状态观察,未出现 token、API key 或凭证存储/传递说明,未见直接凭证泄露或滥用面。
未声明任何远程端点;文档虽提到连接设备、蓝牙掉线和开发者文档链接,但该技能材料本身不包含向第三方服务外发数据的说明,也未见不相关或不明目的地。
系统检查项已标记为 prompt-only;README 仅提供 Kotlin 示例与状态机说明,没有安装脚本、命令执行、进程拉起或要求额外系统执行权限的内容。
材料未声明读写本地文件、数据库、剪贴板或其他用户数据源;仅讨论会话状态、流状态和设备可用性监控,未见超出其说明用途的数据访问请求。
来源为 GitHub 开源仓库,且有 289 star,具备一定可审计性与社区采用度,这是明显的降风险因素;但许可证未声明、维护状态未知,且给出的仓库名与技能名并非完全对应,建议在实际采用前核验仓库关联性与最近维护情况。
复制安装指令,让 AI 自动完成配置 · 推荐新手
请帮我安装 askskill 上的 "session-lifecycle" 技能: 1. 下载 https://raw.githubusercontent.com/facebook/meta-wearables-dat-android/main/plugins/mwdat-android/skills/session-lifecycle/SKILL.md 2. 保存为 ~/.claude/skills/session-lifecycle/SKILL.md 3. 装好后重载技能,告诉我可以用了
请为一个实时语音 AI 应用设计 session lifecycle,包含 session 创建、stream 开始、暂停、恢复、结束与异常中断处理,并输出状态机说明。
一份清晰的会话状态机定义,说明各状态、触发条件与异常处理逻辑。
帮我制定实时流在用户切到后台、网络抖动或手动暂停时的 pause/resume 策略,包含状态同步、重连和用户提示建议。
一套暂停恢复处理方案,覆盖状态保持、恢复条件、重连步骤和提示文案建议。
请为使用麦克风和摄像头的会话系统设计设备可用性监控方案,说明设备断开、权限变化、切换设备时如何更新 session 与 stream 状态。
一份设备监控与状态更新方案,帮助系统稳定处理权限、断连和设备切换事件。
Manage session and stream state in DAT SDK integrations.
Create a Session with Wearables.createSession(...), start it, then attach capabilities such as camera streaming. Session lifecycle and stream lifecycle are related but distinct.
| State | Meaning | App action |
|---|---|---|
IDLE | Session created, not started yet | Call session.start() |
STARTING | Connecting to the device | Show loading UI |
STARTED | Session active and ready for capabilities | Add or use capabilities |
PAUSED | Session temporarily suspended | Keep state, wait for resume or stop |
STOPPING | Session is shutting down | Stop user work and wait |
STOPPED | Session ended | Release resources and create a new session if needed |
val session = Wearables.createSession(AutoDeviceSelector()).getOrElse { error ->
throw IllegalStateException(error.description)
}
session.start()
lifecycleScope.launch {
session.state.collect { state ->
when (state) {
DeviceSessionState.STARTED -> onStarted()
DeviceSessionState.PAUSED -> onPaused()
DeviceSessionState.STOPPED -> onStopped()
else -> Unit
}
}
}
Camera streaming has its own state flow after you attach a stream:
STOPPED -> STARTING -> STARTED -> STREAMING -> STOPPING -> STOPPED -> CLOSED
lifecycleScope.launch {
stream.state.collect { state ->
// React to camera capability state changes
}
}
The SDK may pause or stop a session when:
When a session is paused:
lifecycleScope.launch {
Wearables.devices.collect { devices ->
// Update the list of available devices
}
}
Use Wearables.devices and device metadata to decide when it is sensible to create a new session after a stop.
DeviceSessionState values you care aboutSessionError and StreamError failures帮助开发者完成 Meta 眼镜安卓 SDK 接入与首次设备连接
使用 MockDeviceKit 在无实体眼镜硬件时进行功能联调与测试验证
帮助用户配置摄像头会话与视频流,并完成拍照及分辨率帧率设置
指导你构建含会话创建、相机串流与拍照功能的完整 DAT 应用
帮助排查常见故障、版本兼容与会话流诊断问题,提升开发调试效率
帮助开发者完成 Meta AI 应用注册与设备权限接入流程配置。
帮助用户管理设备会话状态、暂停恢复流程与在线可用性监控。
帮助排查当前 Amplifier 会话中的配置错误、调用失败与异常行为。
用于测试 XR 会话生命周期与模式切换,排查进入退出及状态异常问题。
帮助开发者构建基于 Zoom Video SDK 的自定义视频会话应用
为 ECS Fargate 上的 MCP 服务提供可持久化会话与无状态传输能力。
帮助多台设备上的 Claude 会话共享状态并协同推进复杂任务