
用自然语言控制手机:ApkClaw 让 Android 自动化进入 AI 时代
每天早上要手动打开天气预报看天气,再打开股票 App 看大盘,然后截图发工作群?每周定时点进某个 App 签到做任务,重复到怀疑人生?
我一直在找能让手机"自动干活"的方案。Tasker 太复杂,Auto.js 要写代码,各种插件配起来让人头秃……直到我发现了 ApkClaw。对着手机说句话,它就能自己动起来——至少理论上是这样。
它解决什么问题
ApkClaw 是一个 AI 驱动的 Android 自动化框架。逻辑不复杂:
1. 通过日常聊天工具(钉钉、飞书、QQ、Discord、Telegram)发送自然语言指令
2. 内置的 LLM Agent 理解你的意图
3. Agent 调用 Android 无障碍服务执行操作
你不需要学编程,不需要配置复杂的触发条件。发一条消息,比如"帮我打开微信,给老板发的红包说'生日快乐'",手机就会自动完成。
我 clone 下来跑了一下。它的思路是把手机变成一个可以被 AI"遥控"的终端——这个设计方向挺有意思。
核心功能与技术架构
用户消息 → 消息适配器 → LLM Agent → Android 操作层 → 无障碍服务
消息渠道适配是它最实用的部分。支持钉钉、飞书、QQ、Discord、Telegram这些主流平台,在哪个平台都能触发,不用专门打开某个 App 下发指令。
LLM Agent 层负责理解意图。ApkClaw 用结构化的 prompt 让模型解析用户的模糊指令(比如"帮我弄一下"),拆解成可执行的步骤,再规划路径——先打开哪个 App,再点击哪里。
Android 操作层基于无障碍服务,理论上能操作任何 App,不受接口限制。
不过有个问题:无障碍服务在 Android 上容易被系统杀掉。ApkClaw 用了类似 Auto.js 的保活策略,不能说 100% 稳定,日常使用凑合。
快速上手体验
安装
我在 Pixel 4a(Android 12)上测试通过:
# 克隆项目
git clone https://github.com/apkclaw-team/ApkClaw.git
cd ApkClaw
# 查看详细的安装文档
cat docs/INSTALL.md
配置消息渠道(以 Telegram 为例)
# 1. 在 Telegram BotFather 创建 Bot,获得 Token
# 2. 配置环境变量
export TG_BOT_TOKEN="your_bot_token_here"
# 3. 启动服务
python -m apkclaw.server --platform telegram
发送第一条指令
配好之后,在 Telegram 向 Bot 发:
帮我打开设置,然后截图
几秒后,手机自动打开设置 App 并弹出截图。
有些事得说清楚:
- 首次运行要手动授予无障碍服务权限(设置 → 无障碍 → 找到 ApkClaw)
- 复杂操作(比如需要精确坐标点击)可能要多试几次
- 响应速度取决于 LLM API 的延迟,网络不好会明显卡
与竞品对比
我用过不少 Android 自动化工具,简单说说:
| 特性 | ApkClaw | Tasker | Auto.js |
|---|---|---|---|
| 配置难度 | 低 | 高 | 中 |
| 需要编程 | 否 | 否 | 是(JS) |
| AI 集成 | 原生 | 需插件 | 无 |
| 跨平台触发 | 是 | 否 | 否 |
| 开源 | 是 | 否 | 部分 |
Tasker 功能最全,但学习曲线陡,界面劝退。
Auto.js 在游戏脚本领域用得多,要写 JavaScript,门槛不低。
ApkClaw 的优势是把自然语言直接翻译成设备操作。你不需要知道怎么实现,说清楚想要什么就行。
但它也有问题:
- 依赖外部 LLM API,网络差的时候体验很差
- 某些需要精确操作的任务(比如抢红包)不如专用脚本稳
- 移动端 AI Agent 偶尔会犯迷糊,指令理解错
我的看法
谁适合用:
- 想要自动化但不想写代码的人
- 需要远程控制 Android 设备的开发者或运维
- 对 AI + IoT 感兴趣、喜欢折腾的玩家
评分: ⭐⭐⭐⭐(4/5)
扣一分是因为项目还新,生态不完善,文档和社区都要加强。
风险提示:
- 无障碍服务权限高,建议只在测试机上用
- LLM 指令理解有误会的可能,纯语音/文本指令都存在这个问题
- Android 系统更新可能导致兼容性问题
ApkClaw 把 Android 自动化从"写脚本"带入了"说人话"的时代。如果你受够了 Tasker 的复杂配置,或者想体验手机上的 AI Agent,可以去 GitHub 看看。
地址:https://github.com/apkclaw-team/ApkClaw

