Skip to content

RobinHeZtto/Open-AutoGLM-Android

Repository files navigation

Open-AutoGLM-Android

Open-AutoGLM 的 Android 原生实现版本,运行在 Android APP 上。

通过视觉语言大模型(VLM)实现手机端的自主智能体(AI Agent),用户输入自然语言任务描述,APP 自动截屏、分析、执行操作,循环往复直至任务完成。

功能特点

  • 自然语言控制 — 输入任务描述,AI 自动规划并执行操作步骤
  • 截屏-分析-执行循环 — 每一步截取当前屏幕,发送给 VLM 模型分析,解析返回的操作指令并执行
  • 双模式设备控制
    • 无障碍模式(Accessibility) — 通过 Android 无障碍服务控制设备,无需 Root 或 ADB
    • ADB WiFi 模式 — 通过无线 ADB 协议直接控制设备,支持 NSD 自动发现
  • SSE 流式响应 — 支持 Server-Sent Events 流式传输,实时解析模型输出
  • 丰富的操作类型 — 支持点击、双击、长按、滑动、输入文字、启动应用、返回、主页等 14 种操作
  • 内置应用映射 — 内置 120+ 常用应用的包名映射,覆盖社交、电商、外卖、出行等场景

技术架构

层级 技术
语言 Kotlin
构建 Gradle 8.5 + AGP 8.2.0
最低 SDK 30(Android 11)
目标 SDK 34(Android 14)
UI Android Views + ViewBinding + Material Design 3
网络 OkHttp 4.12 + OkHttp SSE
JSON Gson 2.10
并发 Kotlin Coroutines 1.7
AI 后端 OpenAI 兼容的 /v1/chat/completions API(视觉多模态)

环境要求

  • Android 11+(API Level 30)设备或模拟器
  • JDK 17
  • Android Studio 或 Android SDK(compileSdk 34)
  • AI 后端服务(默认使用 autoglm-phone-9b 模型)

构建与运行

构建

./gradlew assembleDebug

构建产物位于 app/build/outputs/apk/debug/app-debug.apk

运行

  1. 将 APK 安装到 Android 11+ 设备或模拟器
  2. 进入 设置 页面,配置 AI 后端的 API 地址、模型名称和 API Key
  3. 选择控制模式:
    • 无障碍模式:在系统设置中开启「Open-AutoGLM」无障碍服务
    • ADB WiFi 模式:开启设备的无线调试功能
  4. 在主界面输入任务描述(如「打开设置」「在美团上搜索咖啡」)
  5. 点击「开始执行」,Agent 将自主运行并实时显示操作日志

配置说明

配置项 默认值 说明
API URL http://localhost:8000/v1 AI 后端地址,兼容 OpenAI API 格式
模型名称 autoglm-phone-9b 视觉语言模型名称
API Key EMPTY API 认证密钥
最大步数 100 单次任务最大执行步数

项目结构

app/src/main/kotlin/com/openautoglm/
├── App.kt                    # Application 入口
├── MainActivity.kt           # 主界面
├── agent/
│   ├── AgentLoop.kt          # 核心 Agent 循环(截屏 → 模型 → 操作 → 重复)
│   ├── ModelClient.kt        # HTTP 客户端(SSE 流式)
│   ├── MessageBuilder.kt     # 消息构建与系统 Prompt
│   └── ActionHandler.kt      # 操作解析与执行
├── config/
│   ├── AppConfig.kt          # 配置管理
│   ├── Apps.kt               # 应用包名映射
│   ├── ControlMode.kt        # 控制模式枚举
│   └── Timing.kt             # 操作延时常量
├── device/
│   ├── DeviceBackend.kt      # 设备操作接口
│   ├── AccessibilityBackend.kt # 无障碍服务实现
│   ├── AdbWifiBackend.kt     # ADB WiFi 实现
│   └── AdbProtocol.kt        # ADB 协议底层实现
├── service/
│   ├── AgentForegroundService.kt       # 前台服务
│   └── AutoGLMAccessibilityService.kt  # 无障碍服务
├── ui/
│   └── SettingsActivity.kt   # 设置页面
└── util/
    └── ImageUtil.kt          # 图片工具

致谢

本项目是 Open-AutoGLM 的 Android 原生实现版本。原项目由 zai-org 开发维护。

About

Android native implementation of Open-AutoGLM — AI agent that autonomously controls your phone via vision-language model

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages