#!/data/data/com.termux/files/usr/bin/bash # # 工作手机 Agent 启动脚本(Termux 专用) # 功能:自动启动 ATX 服务 → 等待就绪 → 启动 Agent # AGENT_DIR="$(cd "$(dirname "$0")" && pwd)" ATX_PORT=9008 ATX_JAR="/data/local/tmp/u2.jar" PYTHON="/data/data/com.termux/files/usr/bin/python3" export PATH="/data/data/com.termux/files/usr/bin:$PATH" export TMPDIR="/data/data/com.termux/files/usr/tmp" export HOME="/data/data/com.termux/files/home" cd "$AGENT_DIR" start_atx() { if curl -s "http://127.0.0.1:${ATX_PORT}/ping" >/dev/null 2>&1; then echo "✅ ATX 服务已在运行 (端口 ${ATX_PORT})" return 0 fi if [ ! -f "$ATX_JAR" ]; then echo "❌ ATX jar 不存在: $ATX_JAR" echo " 请先从电脑运行: python3 -m uiautomator2 init --serial <设备>" return 1 fi echo "🚀 启动 ATX 服务..." nohup sh -c "CLASSPATH=$ATX_JAR /system/bin/app_process / com.wetest.uia2.Main" \ > /data/local/tmp/atx.log 2>&1 & ATX_PID=$! echo " ATX PID: $ATX_PID" for i in $(seq 1 20); do sleep 1 if curl -s "http://127.0.0.1:${ATX_PORT}/ping" >/dev/null 2>&1; then echo "✅ ATX 服务就绪 (${i}s)" return 0 fi echo " 等待 ATX... (${i}/20)" done echo "❌ ATX 服务启动超时" return 1 } echo "=========================================" echo " 工作手机 Agent 启动器" echo " 目录: $AGENT_DIR" echo "=========================================" if ! start_atx; then echo "" echo "⚠️ ATX 未就绪,Agent 将以无 u2 模式启动" echo " (WebSocket 连接和心跳正常,UI 操作不可用)" fi echo "" echo "🤖 启动 Agent..." exec $PYTHON agent.py "$@"