当前位置: 首页 > news >正文

使用droidrun库实现AI控制安卓手机

使用droidrun库实现AI控制安卓手机


介绍

DroidRun 是一个框架,通过LLM代理控制 Android 设备。它允许您使用自然语言命令自动化 Android 设备交互。

安装环境

安装源码依赖

git clone https://github.com/droidrun/droidrun.git
cd droidrun
conda create --name droidrun python=3.11 -y
conda activate droidrun
pip install -e .

安装 ADB

  • Install ADB

    • macOS:

    • brew install android-platform-tools
      
    • Windows: 下载 Android SDK Platform Tools 平台工具并解压 ZIP 文件

  • 验证安装

    • (droidrun) ➜  droidrun git:(main) adb version
      Android Debug Bridge version 1.0.41
      Version 35.0.2-12147458
      Installed as /opt/homebrew/bin/adb
      Running on Darwin 24.4.0 (arm64)
      (droidrun) ➜  droidrun git:(main)
      

安装 DroidRun Portal 应用

  • 下载地址
安装到手机

这里我使用的安卓虚拟机

droidrun setup --path=/Users/hejh/Desktop/droidrun-portal-v0.1.0.apk

(droidrun) ➜  droidrun git:(main) ✗ droidrun devices
Found 1 connected device(s):• emulator-5554
(droidrun) ➜  droidrun git:(main) ✗ droidrun setup --path=/Users/hejh/Desktop/droidrun-portal-v0.1.0.apk
Using device: emulator-5554
Set DROIDRUN_DEVICE_SERIAL to: emulator-5554
Step 1/2: Installing APK: /Users/hejh/Desktop/droidrun-portal-v0.1.0.apk
Installation successful!
Step 2/2: Enabling accessibility service
Accessibility service enabled successfully!Setup complete! The DroidRun Portal is now installed and ready to use.

image-20250418145922350

image-20250418153347906

设置 API 密钥

  • 项目根目录创建一个 .env 文件或设置环境变量
# Choose at least one of these based on your preferred provider
export OPENAI_API_KEY="your_openai_api_key_here"
export ANTHROPIC_API_KEY="your_anthropic_api_key_here"
export GEMINI_API_KEY="your_gemini_api_key_here"

可以只设置OPENAI_API_KEY

验证设置

# Should list your connected device and show portal status
droidrun status

image-20250418153627098

运行Demo

  • droidrun "打开设置" --provider openai --model gpt-4.1-mini
    

image-20250418154853407

  • droidrun "打开Chrome,访问 www.baidu.com, 然后搜索 Weather" --provider openai --model gpt-4o
    

image-20250418162538378

http://www.dtcms.com/a/141988.html

相关文章:

  • Python读取Excel表数据转为JSON格式文件(详细优化版)
  • 软件研发技术团队管理规范
  • 怎么隐藏QTabWidget内的页面
  • 如何校验一个字符串是否是可以正确序列化的JSON字符串呢?
  • 优恩-具备浪涌保护功能的固态继电器UNRD0610-无触点开关器件‌
  • 理解和实现RESTful API的最佳实践
  • ros3d.js中动态改变pointCloud2点云数据的参数
  • vue2.6.12 安装babel 以使用 可选链 ?. 和空值合并 ??
  • 树莓派练习
  • 曲棍球·棒球1号位
  • Linux | I.MX6ULL 内核的编译(13)
  • LINUX学习——守护进程的含义及编程实现
  • KaliARP 攻击工具配置——简单局域网断网攻击
  • C言雅韵集:野指针
  • 团体程序设计天梯赛PTA-SHU冲刺赛4. L22-L32
  • 【AI学习】OpenAI:《A practical guide to building agents》(中文介绍与原文)
  • 无锡透平叶片将携尖端叶片登陆2025涡轮展,5月苏州相见
  • 《软件设计师》复习笔记(11.5)——测试原则、阶段、测试用例设计、调试
  • Linux文件类型
  • Day3-UFS深入学习路线
  • MAC-如果是分页查询,怎么分批次in;基于多线程的分页查询工具类
  • Windows 图形显示驱动开发-WDDM 1.2功能—Windows 8 中的 DirectX 功能改进(六)
  • 《软件设计师》复习笔记(13)——结构化开发方法
  • X-AnyLabeling开源程序借助 Segment Anything 和其他出色模型的 AI 支持轻松进行数据标记。
  • Python 创意:AI 图像生成
  • Canal组件学习使用
  • FreeSWITCH中SIP网关(Gateway)操作
  • 方德桌面操作系统V5.0-G23安装Anaconda
  • Multi Agents Collaboration OS:文档合规性及质量检测助手设计及实践
  • Vue3 计算属性与侦听器深度解析:优雅处理响应式数据引言