>_ DevTrendszh

语言

首页

语言

板块

前端 后端 移动端 DevOps AI / ML 游戏开发 区块链 嵌入式 安全
TypeScript

Another 将电脑管理 Android 设备变成便捷流程,并接入 AI

Another app icon

任何曾经从电脑测试移动应用或配置手机的人都用过 scrcpy 工具。它快速、可靠,能精确完成所需操作。但当你需要快速录制重复点击的宏、不用终端命令切换到 Wi-Fi,或者将控制权交给 LLM 代理时,命令行脚本就显得力不从心了。

我最近发现了开发者 Zfinix 的 Another 项目。这是一个用于屏幕投射和管理 Android 设备的桌面应用,基于 Tauri 2、Rust 和 React 19 构建。

Another

核心技术与工作原理

为了不重复造轮子,作者直接集成了现成的 scrcpy 2.7 版本。画面通过 H.264/H.265 解码,应用可以动态实时调整比特率,根据屏幕显示内容自动适应。如果屏幕静止,就压缩流量;如果是视频或动画,比特率就会提高。

该应用可以:

  • 投射屏幕并传输音频(适用于 Android 11 及以上设备);
  • 一键切换到 Wi-Fi 投射,无需数据线;
  • 直接录制屏幕为 MP4 格式;
  • 捕获手势、点击、滚动和键盘文本输入;
  • 录制操作宏以便回放、导出或分享。

界面非常简洁。有一个命令栏可以通过快捷键触发操作(macOS 上是 ⌘K,Windows 和 Linux 上是 Ctrl+K),所以甚至可以完全不用鼠标。

核心功能:内置 MCP 服务器

这个项目最有趣的地方是支持 Model Context Protocol (MCP)。本质上,应用启动后会在 7070 端口上运行一个本地服务器。

如果你使用 Claude Desktop、Cursor 或 Claude Code,可以将手机作为神经网络的工具连接起来。代理可以自行打开应用、截取屏幕截图、按下按钮和填写表单。

连接方法很简单,只需在 MCP 客户端设置中添加配置:

{
  "mcpServers": {
    "another": {
      "type": "http",
      "url": "http://localhost:7070/mcp"
    }
  }
}

通过这个协议,助手可以访问大量工具,包括:

  • screen_capture — 将当前屏幕截图为 PNG;
  • tap、swipe、long_press — 通过坐标模拟点击和滑动;
  • input_text — 在活动字段中输入文本;
  • launch_app — 通过包名启动应用;
  • shell_command — 通过 adb shell 执行任意命令;
  • macro_play 和 macro_stop — 宏管理。

对于 Claude Code,他们甚至准备了一个单独的 skill,只需一行命令即可安装:

npx skills add Zfinix/another@another-android

技术栈

架构设计没有不必要的开销:

  • 后端:使用 Tauri 2 框架的 Rust、Tokio 异步运行时、rodio 音频播放器。
  • 前端:React 19、TypeScript、Vite 和 Base UI 组件。
  • 设备交互:标准 ADB 加上 scrcpy-server 的自定义封装。

得益于 Tauri,二进制文件不需要附带笨重的 Chromium,因此与典型的 Electron 应用相比,内存消耗保持在较低水平。

适用人群

该项目面向移动开发者、QA 测试人员以及尝试 AI 代理自动化的人群。能够使用 Claude 直接在真实设备上运行应用场景,为常规 QA 节省大量时间。

目前该应用在 macOS 上运行稳定,而 README 中标记的 Linux 和 Windows 构建仍处于实验阶段。如果你想从源码构建项目,需要准备 Rust、Node.js 和 Bun:

bun install
bun tauri dev

macOS、Linux(.deb、.AppImage)和 Windows(.msi、.exe)的预构建包可在仓库的 releases 中找到。

相关项目