Android 应用(节点)
支持快照
- 角色:伴随节点应用(Android 不承载网关)。
- 需要网关:是(运行在 macOS、Linux 或通过 WSL2 的 Windows 上)。
- 安装:快速开始 + 配对。
- 网关:运行手册 + 配置。
- 协议:网关协议(节点 + 控制面)。
系统控制
系统控制(launchd/systemd)运行在网关主机上。请参见 网关。连接运行手册
Android 节点应用 ⇄ (mDNS/NSD + WebSocket) ⇄ 网关 Android 直接连接至网关 WebSocket(默认ws://<host>:18789),使用设备配对(role: node)。
前提条件
- 你可以在“主控”机器上运行网关。
- Android 设备/模拟器能够访问网关 WebSocket:
- 在同一局域网且支持 mDNS/NSD,或者
- 在同一 Tailscale tailnet,使用宽域 Bonjour / 单播 DNS-SD(见下文),或者
- 手动设置网关主机/端口(备选)
- 你可以在网关机器上(或通过 SSH)运行 CLI(
openclaw)。
1) 启动网关
listening on ws://0.0.0.0:18789
- 在网关主机的
~/.openclaw/openclaw.json设置gateway.bind: "tailnet"。 - 重启网关 / macOS 菜单栏应用。
2) 验证发现(可选)
从网关机器执行:通过单播 DNS-SD 实现 Tailnet(Vienna ⇄ London)发现
Android 的 NSD/mDNS 发现不能跨网络。如果你的 Android 节点和网关在不同网络,但通过 Tailscale 连接,请使用宽域 Bonjour / 单播 DNS-SD:- 在网关主机上设置一个 DNS-SD 区域(示例为
openclaw.internal.),并发布_openclaw-gw._tcp记录。 - 配置 Tailscale 分割 DNS,针对你选择的域名指向该 DNS 服务器。
3) 从 Android 连接
在 Android 应用中:- 应用通过 前台服务(持续通知)保持网关连接活跃。
- 打开 连接 标签。
- 使用 设置码 或 手动 模式。
- 若发现被阻止,使用 高级控制 中的手动主机/端口(及需要时的 TLS/token/密码)。
- 手动端点(若启用),否则
- 上一次发现的网关(尽力而为)。
4) 批准配对(CLI)
在网关机器上:5) 验证节点已连接
-
通过节点状态:
-
通过网关:
6) 聊天 + 历史
Android 聊天标签支持会话选择(默认main,还有其他存在的会话):
- 历史:
chat.history - 发送:
chat.send - 推送更新(尽力而为):
chat.subscribe→event:"chat"
7) 画布 + 屏幕 + 相机
网关画布主机(推荐用于网页内容)
如果你希望节点显示可由代理编辑盘上的真实 HTML/CSS/JS,可将节点指向网关画布主机。 注意:节点从网关 HTTP 服务器加载画布(与gateway.port 端口相同,默认 18789)。
-
在网关主机上创建
~/.openclaw/workspace/canvas/index.html。 - 让节点导航至该地址(局域网):
.local,如 http://<gateway-magicdns>:18789/__openclaw__/canvas/。
该服务器会向 HTML 注入实时重载客户端,并在文件变更时自动刷新。
A2UI 主机位于 http://<gateway-host>:18789/__openclaw__/a2ui/。
画布命令(仅前台):
canvas.eval,canvas.snapshot,canvas.navigate(使用{"url":""}或{"url":"/"}返回默认脚手架)。canvas.snapshot返回{ format, base64 }(默认format="jpeg")。- A2UI:
canvas.a2ui.push,canvas.a2ui.reset(canvas.a2ui.pushJSONL为旧别名)
camera.snap(jpg)camera.clip(mp4)
screen.record(mp4;仅前台)
8) 语音 + 扩展的 Android 命令界面
- 语音:Android 在语音标签中采用单一麦克风开启/关闭流程,支持转录捕获及 TTS 播放(配置时使用 ElevenLabs,系统语音合成为后备)。
- 语音唤醒/对话模式开关现已从 Android UX/运行时移除。
- 额外的 Android 命令家族(可用性取决设备和权限):
device.status,device.info,device.permissions,device.healthnotifications.list,notifications.actionsphotos.latestcontacts.search,contacts.addcalendar.events,calendar.addmotion.activity,motion.pedometerapp.update