Usa longarm y un agente de IA para crear una tarea por lotes más segura en un juego de Android
- Metaphor Projects
- Automatización de Android
- 12 Aug, 2026
Muchos juegos móviles tienen un bucle simple y repetible: iniciar una ronda, dejar que se desarrolle, recoger su resultado y volver a empezar. Cuando un juego permite este tipo de automatización, longarm puede hacer que el bucle sea repetible en un teléfono Android sin darle a un servicio remoto acceso a la pantalla.
Este artículo usa un juego genérico de torres defensivas como ejemplo. El objetivo no es eludir las reglas del juego, los anuncios, las compras, los límites de frecuencia ni las protecciones anti-trampas. Revisa los términos del juego y usa la automatización solo donde esté permitida.

Divide el trabajo entre un agente de IA y longarm
El agente de IA es mejor en la configuración y la verificación. Puede inspeccionar capturas de pantalla, identificar las regiones correctas de la pantalla, probar una acción a la vez y construir una tarea por lotes a partir de las acciones verificadas.
longarm es mejor en la ejecución. Una vez guardada la tarea, abre la app, realiza los gestos, espera un estado visual y repite el bucle localmente en el dispositivo.
Esta separación importa. Una tarea de larga duración no debería reproducir a ciegas suposiciones hechas a partir de una sola captura de pantalla.
Empieza con una acción a la vez
Antes de crear una tarea por lotes, haz que el agente pruebe cada acción de forma independiente:
- Abre el paquete del juego y confirma que aparece la pantalla de inicio esperada.
- Captura una pantalla con una cuadrícula de coordenadas.
- Toca el botón de Start o Battle y confirma que comienza una ronda en vivo.
- Termina o espera una ronda de prueba, captura la pantalla de resultado e identifica el botón Retry.
- Toca Retry una vez y confirma que comienza la siguiente ronda.
Esto detecta dos problemas comunes: una captura de pantalla puede aparecer escalada en un visor, y un juego basado en Unity puede no exponer sus controles a través de Android Accessibility.
Usa OCR para la condición de fin de ronda
Los selectores de accesibilidad son ideales para apps normales de Android. Sin embargo, los juegos hechos con Unity u otro motor de renderizado propio suelen dibujar su propio texto y controles, por lo que el árbol de accesibilidad puede estar vacío.
longarm 1.3.0 añade condiciones de OCR en el dispositivo. Un lote puede capturar una parte recortada de la pantalla actual y esperar hasta reconocer una palabra como RETRY. Recorta de forma ajustada alrededor del botón de resultado esperado para reducir el trabajo y evitar coincidir con una palabra no relacionada.
Por ejemplo, la tarea puede esperar la pantalla de resultado así:
{
"type": "wait_for_ocr",
"params": {
"text": "RETRY",
"match": "contains",
"x": 50,
"y": 1450,
"width": 430,
"height": 400,
"pollIntervalMs": 120000,
"timeoutMs": 3600000
}
}
La tarea primero espera una duración mínima esperada de la ronda y luego revisa esa región de la pantalla cada dos minutos. Esto suele consumir mucha menos batería que revisar de forma continua.
Ensambla el bucle por lotes
Una tarea fiable tiene cuatro fases:
- Abre la actividad del juego.
- Toca la coordenada verificada de Start o Battle.
- Espera un tiempo mínimo y luego espera a que el OCR encuentre el control de resultados.
- Toca la coordenada verificada de Retry y repite.
Usa un número máximo fijo de iteraciones y un tiempo de espera de OCR razonable. Ambos le dan a la tarea un final claro en lugar de permitir que un bucle desatendido se ejecute para siempre.
Mantén el control de la tarea
El botón Stop de longarm interrumpe de inmediato las pausas normales y las esperas de OCR. Prueba Stop con una tarea corta y desechable antes de dejar una ejecución más larga sin supervisión.
Mantén el dispositivo cargado, mantén Accessibility activado y asegúrate de que el juego no muestre un diálogo que cubra el botón de resultado. Si el juego cambia su diseño, repite las comprobaciones de acción individual antes de reiniciar el bucle guardado.
Por qué el agente de IA sigue ayudando
Un agente de IA no necesita estar en el bucle para cada toque. Su valor está en hacer que la automatización sea explicable y comprobable: puede inspeccionar la pantalla, determinar si el OCR es apropiado, seleccionar un recorte, validar coordenadas y guardar una tarea por lotes de longarm reutilizable.
Eso convierte una macro frágil en un flujo de trabajo local que puedes inspeccionar, detener, ajustar y volver a ejecutar cuando corresponda.