Type something to search...
使用 longarm 批处理任务运行可复用的 Android 工作流

使用 longarm 批处理任务运行可复用的 Android 工作流

longarm 现已支持批处理任务,也就是可保存、可一次执行多个动作的 Android 自动化流程。

你不再需要为每一次点击、延时、启动应用或截图分别发送请求,而是可以把这些步骤组合成一个具名任务。你可以在设备上的 Batch 标签页中运行它,也可以从脚本通过 HTTP API 触发,或者让兼容 MCP 的 AI Agent 以工具形式列出、保存、运行并检查批处理任务。

longarm 批处理任务界面,展示已保存的可复用 Android 自动化流程


批处理任务带来了什么

longarm 的第一个版本专注于直接远程控制:启动本地 HTTP 服务器、发送一个手势请求、截取一张屏幕图像,并让设备在桌面工作流中保持可见。

批处理任务让这种控制方式变得可复用。

一个批处理任务可以包含:

  • 点击、长按、滑动、捏合、旋转和双指滑动
  • 步骤之间的延时
  • 执行过程中的截图
  • 按 Android 包名启动应用
  • 用于更深入应用或系统流程的 Android Intent
  • 用于在多个步骤中复用值的变量
  • 用于重复子步骤的循环

这意味着有用的单位不再只是“点击这个坐标”,而可以是“打开这个应用,等待加载,滚动内容流,截取结果,然后保留一次运行记录”。

面向真实工作流

当同一个 Android 流程需要重复执行很多次时,批处理任务会很有用:

  • 每次应用构建后采集相同的一组截图
  • 在真实设备上执行一次 QA 冒烟测试
  • 在人工测试前打开目标应用并将其置于已知状态
  • 自动化那些对设备过于依赖、难以在模拟器中完成的准备步骤
  • 给 AI Agent 一个更高层级的动作,而不是大量脆弱的单独手势

每次运行都会记录到历史中,包含状态、进度、消息以及采集到的截图。任务以异步方式启动,并返回一个 runId,因此脚本和智能体可以轮询历史,而无需长时间保持 HTTP 请求处于打开状态。

同一时间只能运行一个批处理任务。如果已经有其他任务在执行,longarm 会返回冲突,而不是把两个自动化流程混在同一块屏幕上执行。

从应用、HTTP 或 MCP 运行

Batch 标签页是在设备上直接创建和运行任务的最简单方式。它适合先把一个流程搭建好、命名,然后在之后反复回放。

当任务属于桌面脚本、CI 辅助工具或本地自动化工具的一部分时,HTTP API 更合适。你可以通过 /api/batch 创建已保存任务,通过 /api/batch/<id>/run 运行一个已保存任务,或者通过 /api/batch/run 立即执行一个内联任务。

MCP 服务器则将同样的概念暴露给 AI Agent。batch_listbatch_savebatch_runbatch_run_inlinebatch_statusbatch_history_get 等工具让智能体能够直接处理完整的 Android 工作流,而不必手动拼接每一个底层屏幕操作。

一个简短的 Python 示例

下面的示例会启动一个内联批处理任务:打开 Android 设置,等待其加载,截取一张屏幕图像,并持续查询运行历史直到任务结束。

请将 BASE_URL 替换为 longarm 中显示的地址。如果你的服务器使用认证令牌,请将 TOKEN 替换为应用中显示的令牌。

import time
import requests

BASE_URL = "http://192.168.1.10:8080"
TOKEN = "secret"

headers = {
    "Authorization": f"Bearer {TOKEN}",
    "Content-Type": "application/json",
}

task = {
    "name": "Open Settings and capture",
    "steps": [
        {
            "type": "open_app",
            "params": {"packageName": "com.android.settings"},
            "delayAfterMs": 2000,
        },
        {
            "type": "screenshot",
            "params": {"scale": 1},
        },
    ],
}

run = requests.post(
    f"{BASE_URL}/api/batch/run",
    headers=headers,
    json=task,
    timeout=10,
).json()

run_id = run["runId"]
print("started", run_id)

while True:
    history = requests.get(
        f"{BASE_URL}/api/batch/history/{run_id}",
        headers=headers,
        timeout=10,
    ).json()

    print(history["status"], history.get("message", ""))

    if history["status"] != "processing":
        break

    time.sleep(1)

当运行结束后,历史记录会包含进度信息,以及任务过程中捕获的所有截图引用。启用 longarm Plus 后,还可以通过历史接口下载截图文件并导出 zip 压缩包。

为什么这很重要

真实设备自动化之所以常常变得脆弱,是因为每个脚本都要重新发现同样的准备步骤。批处理任务把这些步骤移得更靠近设备本身,并为它们提供稳定的名称、运行历史,以及通过 HTTP 和 MCP 提供的远程控制接口。

这让 longarm 更适合日常 Android 自动化工作:一个流程只需构建一次,就可以从你工作的任何地方反复执行,同时还保留足够清晰的结果以便调试。

在 Google Play 上获取 longarm

Related Posts

通过 Infini Alchemy 轻松学习词汇

通过 Infini Alchemy 轻松学习词汇

你是否正在寻找一款既有趣又能帮助你学习新词汇的游戏?不用再找了!Infini Alchemy 是一款富有创意的炼金术游戏,你可以将水、火、土、气等基本元素组合起来,发现一个充满新物品的广阔世界。游戏玩法简单直观。你可以拖放元素,将它们相互组合,看看能创造出什么新奇有趣的东西。但这里有个魔法:每次你创造一个新元素时,应用程序都会朗读其名称。随着游戏的进行,

read more
如何将 ChatGPT 响应中的公式复制到 Word

如何将 ChatGPT 响应中的公式复制到 Word

将 ChatGPT 响应中的公式复制到 Word,只需 3 步:将 ChatGPT 响应复制为 markdown(保留 LaTeX 公式) 在 Word 中选择公式并插入为方程 在 Word 数学编辑器中转换 LaTeX 公式步骤 1:复制为 Markdown 格式(含 LaTeX) 第一步,你需要 Selection Copilot,一个 Chrome 扩展程序

read more
通过炼金术掌握 KET 词汇:全新学习冒险

通过炼金术掌握 KET 词汇:全新学习冒险

Infini Alchemy 是一款创新的网页游戏,它将词汇学习转变为一场引人入胜的炼金术冒险。通过拖放元素来制作新物品,玩家在应用程序朗读每个创作物时自然地吸收新词汇。这种游戏化的方法让语言学习感觉不像学习,更像是探索,非常适合想要以互动、难忘的方式建立英语词汇量的学习者。 一本新的炼金术书籍已经来到 Infini Alchemy——KET 词汇炼金术书 —— 这是一个全面的集合,包含

read more
GPU 加速实时视频效果

GPU 加速实时视频效果

Sub Dimension Camera 现已提供 GPU 渲染功能。此功能消除了录制后等待视频"渲染"的需要。你现在可以实时预览和捕获复杂的艺术滤镜。 通过使用 WebGPU,应用程序将视觉处理从手机的主处理器卸载到专用图形硬件。这使得性能更流畅、发热更少,并在长时间使用期间提高电池效率。对于不支持 WebGPU 的设备,我们仍然有渲染所有效果的备用模式(但速度较慢)。 Sub Dimens

read more
以不同方式看世界:Sub Dimension 的相机特效

以不同方式看世界:Sub Dimension 的相机特效

相机记录瞬间,特效将其升华为艺术。 Sub Dimension 内置丰富的实时视觉特效,可在取景器中即时呈现——所见即所得,无论拍照还是录像皆如此。以下介绍部分特效及其能为你的画面带来的效果。ASCII 艺术将任何场景转化为字符网格。ASCII 特效将亮度值映射为文字符号,营造出复古终端美感,

read more
longarm 现已登陆 Android

longarm 现已登陆 Android

longarm 现已通过 Google Play 登陆 Android。 longarm 可以把 Android 手机或平板变成一个可远程控制的端点,适合开发者、测试人员、自动化脚本和 AI Agent 使用。启动内置 HTTP 服务器,复制设备 URL,就可以从同一局域网中的另一台机器发送 API 请求。 [在 Google Play 上下载 longarm](https://play.go

read more

让 AI 智能体调整窗口大小并完成截图

屏幕自动化要让人放心,结果就必须可见、可重复。在这个简短演示中,AI 智能体使用 OverRec 屏幕技能找到一个浏览器窗口,将其调整到精确矩形,并在无需手动拖拽的情况下截取干净的截图。

read more
如何用 OverRec 截取 YouTube 视频帧(或任意视频网站)

如何用 OverRec 截取 YouTube 视频帧(或任意视频网站)

你正在观看教程、产品演示或直播,想要截取一帧干净的视频画面——没有浏览器工具栏、标签栏,没有任何干扰。以下是使用 OverRec 的两种方法。方法一:在视频上绘制矩形,然后复用坐标 适合任何设备的最精确方法。使用 OverRec 的图形界面绘制一个精确覆盖视频播放

read more
使用 OverRec 将任意屏幕区域录制为 GIF 或 MP4

使用 OverRec 将任意屏幕区域录制为 GIF 或 MP4

屏幕录制通常需要做出妥协:要么录制整个显示器,之后再裁剪;要么每次都重新调整录屏工具的区域选择框。OverRec 现在可以直接录制你绘制的精确矩形,并沿用截图和窗口定位功能中已有的像素级精确工作流。 你可以从 OverRec 工具栏进行交互式录制,也可以通过命令行自动执行定时录制。输出格式支持动态 GIF 和 H.264 MP4。从图形界面录制精确区域 可视化录制流程非常简

read more

将任意窗口精确定位到指定位置和尺寸

你精心搭建了完美的工作流:左边代码编辑器,右边浏览器,底部终端。然后重启电脑,又花了五分钟把窗口一个个拖回原位——差不多,但就是不够准。 OverRec 解决了这个问题。手动拖拽窗口的局限 用鼠标拖拽窗口本来就不精确。你瞄准第 960 像素,落点却是 963。你把窗口调到"看起来差不多",却在一秒后发现那道缝隙。日常使用无所谓,但对于录屏、文档截图或需要重复使用的工作区布局

read more
让 AI Agent 直接控制屏幕:OverRec 的 MCP 服务器

让 AI Agent 直接控制屏幕:OverRec 的 MCP 服务器

AI 编程智能体擅长推理任务,但并不擅长真正操作屏幕: 找到一个窗口、把它摆正,再截出一张干净的图片,过去往往需要拼接一堆临时脚本。OverRec 通过作为 Model Context Protocol(MCP)服务器运行,填补了这道缺口。这样一来,无论是 Claude Code、Claude Desktop,还是你自己的工具

read more
RESET-0:熵之建筑师 现已登陆 Android

RESET-0:熵之建筑师 现已登陆 Android

RESET-0:熵之建筑师现已通过 Google Play 登陆 Android 平台。 Android 版本将完整的宇宙增量旅程带到手机和平板设备。从量子涨落开始,自动化不断扩张的宇宙机器,推进到恒星形成与黑洞工业阶段,持续建设,直到熵只剩下一个选择:设计下一个宇宙。 [在 Google Play 上下载 RESET-0](https://play.google.com/store/apps

read more
RESET-0: Entropy Architect Is Now Available on Android

RESET-0: Entropy Architect Is Now Available on Android

RESET-0: Entropy Architect is now available on Android through Google Play. The Android release brings the full cosmic incremental journey to phones and tablets. Begin with quantum fluctuations, auto

read more
longarm Is Now Available on Android

longarm Is Now Available on Android

longarm is now available on Android through Google Play. longarm turns an Android phone or tablet into a controllable remote endpoint for developers, testers, automation scripts, and AI agents. Start

read more
RESET-0: Entropy Architect ya está disponible en Android

RESET-0: Entropy Architect ya está disponible en Android

RESET-0: Entropy Architect ya está disponible en Android a través de Google Play. La versión para Android lleva el viaje incremental cósmico completo a teléfonos y tablets. Empieza con fluctuaciones

read more
longarm ya está disponible en Android

longarm ya está disponible en Android

longarm ya está disponible en Android a través de Google Play. longarm convierte un teléfono o tablet Android en un endpoint remoto controlable para desarrolladores, testers, scripts de automatizació

read more
Run repeatable Android workflows with longarm batch tasks

Run repeatable Android workflows with longarm batch tasks

longarm now supports batch tasks: saved Android automation flows that can run more than one action at a time. Instead of sending a separate request for every tap, delay, app launch, or screenshot, yo

read more
Automatiza flujos repetibles de Android con las tareas por lotes de longarm

Automatiza flujos repetibles de Android con las tareas por lotes de longarm

longarm ahora admite tareas por lotes: flujos de automatización de Android guardados que pueden ejecutar más de una acción a la vez. En lugar de enviar una solicitud separada para cada toque, pausa,

read more