Files
lzwcai-terminal-temi/README.md
Sucan 71e5edc57a feat(设置): 新增当前位置选择器并优化UI与交互
- 在设置页面添加基于机器人位置列表的下拉选择器,支持手动设置当前位置
- 改进特殊任务模式的开关逻辑,避免与当前任务状态冲突
- 优化MQTT指令处理,新增terminate、continue命令,完善TTS暂停/恢复机制
- 添加表情动画的眨眼效果,改进导航到达和巡逻模式的状态管理
- 重构颜色主题为浅色风格,并添加横屏布局支持
- 更新README文档,补充MQTT指令说明和本地验证步骤
2026-03-13 16:02:33 +08:00

81 lines
3.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Temi 机器人应用开发与预览指南
本项目是一个基于 Temi SDK 的 Android 应用程序,包含主界面和网络 IP 设置功能。
## 1. 预览与运行环境
### 推荐工具Android Studio
由于 Android 应用依赖于复杂的构建系统 (Gradle) 和特定的运行时环境 (Android OS)**无法像网页那样直接通过浏览器或简单的编辑器插件预览**。
最标准的开发和预览工具是 **Android Studio** (官方 IDE)。
### Trae 的角色
Trae 非常适合编写代码、管理项目结构和进行逻辑开发。但为了查看应用的实际运行效果UI 和交互),你需要将代码编译成 APK 并安装到设备上,这通常需要 Android Studio 的配合。
---
## 2. 如何在另一台电脑上运行
### 步骤 1: 安装 Android Studio
请访问 [Android Studio 官网](https://developer.android.com/studio) 下载并安装最新版本。
### 步骤 2: 导入项目
1. 打开 Android Studio。
2. 选择 **Open** (打开项目)。
3. 导航到本项目所在的文件夹 `lzwcai-terminal-temi` 并点击 OK。
4. 等待 Android Studio 自动同步 Gradle 依赖(这可能需要几分钟,取决于网络)。
### 步骤 3: 运行应用 (两种方式)
#### 方式 A: 连接 Temi 机器人 (强烈推荐)
Temi SDK 的很多功能(如语音、导航、跟随)依赖于机器人的硬件传感器。
1. 确保 Temi 机器人已开启 **开发者模式** (设置 -> 通用 -> 开发者选项)。
2. 使用 USB 线(通常是 USB-A 转 USB-A 或通过背部接口)将电脑连接到 Temi。
3. 或者使用 **ADB over Wi-Fi** (确保电脑和 Temi 在同一 Wi-Fi 下)。
4. 在 Android Studio 顶部工具栏选择连接的设备,点击 **Run** (绿色三角形按钮)。
#### 方式 B: 使用 Android 模拟器 (仅限 UI 预览)
如果你身边没有机器人,可以使用模拟器预览界面布局,但会报错或功能受限。
1. 在 Android Studio 中点击 **Device Manager** 创建一个虚拟设备 (推荐 Pixel 系列API 30+)。
2. 运行模拟器。
3. **注意**:由于模拟器没有 Temi 的系统服务,`Robot.getInstance()` 可能会导致崩溃或返回错误。
- *提示*:为了在模拟器上查看 UI你可能需要暂时注释掉 `MainActivity.kt` 中调用 `Robot` 的代码。
---
## 3. 项目结构说明
- **主界面**: `app/src/main/java/.../MainActivity.kt`
- 包含日志显示和跳转设置的按钮。
- 初始化 Robot SDK。
- **设置界面**: `app/src/main/java/.../SettingsActivity.kt`
- 用于设置和保存网络 IP 地址。
- **布局文件**:
- `app/src/main/res/layout/activity_main.xml` (主页布局)
- `app/src/main/res/layout/activity_settings.xml` (设置页布局)
## 4. MQTT 指令与行为
应用订阅 `robot/cmd`,接收 JSON 指令。
### 动作列表
- `recharge` 前往充电桩
- `goto` 前往指定地点(字段 `location``target`
- `speak` 立即播报(字段 `text``speech`
- `stream` 流式播报(字段 `text``content`),按句号/感叹号/问号/换行分句
- `stop` 暂停 TTS 与播报队列,不清空 stream buffer
- `continue` 继续播报,优先重播被中断的那句话
- `terminate` 终止导航与 TTS清空队列和 buffer
### special 模式说明
- special 是否启用只看设置页开关 `special_task_mode`
- setCurrentTask 不会开启或关闭 special
- special 开启时,会跳过门控与问候等场景逻辑
## 5. 本地验证
```bash
.\gradlew.bat :app:installDebug
```