使用 Kotlin 构建开源 Android 语音助手
发布: (2026年2月4日 GMT+8 11:53)
2 分钟阅读
原文: Dev.to
Source: Dev.to
用你自己的 AI 替代 Google Assistant
如果你可以长按 Home 键并与 你的 AI 对话,而不是 Google 的 Assistant,会怎样?我构建了 OpenClaw Assistant —— 一个开源的 Android 应用,正是实现了这一点。
- 📹 演示:
- 🔗 GitHub:
功能
- 🏠 系统助理集成 – 长按 Home 键激活
- 🎤 自定义唤醒词 – “Jarvis”、 “Computer” 或任何你选择的短语
- 📴 离线唤醒词检测 – 由 Vosk 提供支持,无需云端
- 🔊 语音 I/O – 语音识别 + 文本转语音 (TTS)
- 🔗 后端无关 – 可连接 Ollama、OpenAI、Claude 或任何自定义 API
架构概览
| 组件 | 技术 |
|---|---|
| UI | Kotlin + Jetpack Compose + Material 3 |
| 系统钩子 | VoiceInteractionService |
| 唤醒词 | Vosk(离线) |
| 语音 | Android SpeechRecognizer + TTS |
| 网络 | OkHttp + Gson |
- 应用注册为 Android 的数字助理。
- Vosk 在本地监听唤醒词。
- 激活后,语音被转录并发送到你的 webhook。
- 响应通过 TTS 朗读出来。
安装
git clone https://github.com/yuga-hashimoto/OpenClawAssistant
cd OpenClawAssistant
./gradlew assembleDebug
或从 GitHub 的 Releases 页面下载 APK。
Webhook API 合约
你的后端必须接受 POST 请求:
POST /your-endpoint
Content-Type: application/json
{
"message": "user's speech",
"session_id": "..."
}
并返回:
{
"response": "AI's reply"
}
贡献
欢迎贡献!随时在 GitHub 仓库中打开 issue 或提交 pull request。