影刀RPA零基础教程:手机自动化与ADB环境搭建——从连接到实战

做电商运营,很多操作只能在手机App里完成——抖音直播间互动、TEMU商品上架、小红书发布笔记、TikTok Shop数据采集。网页自动化解决不了的问题,手机自动化可以。

影刀RPA支持手机自动化(Android),底层基于ADB命令。不需要你写代码,影刀把常用操作封装成了指令。但手机自动化跟网页自动化完全是两套逻辑——没有元素库、没有XPath、全靠坐标和UI树。我也是非技术出身,刚开始搞手机自动化的时候,光是连接手机就折腾了一整天。

今天就把手机自动化的完整流程讲一遍——ADB环境怎么搭、手机怎么连、指令怎么用、坑在哪里。

手机自动化能做什么,不能做什么

先搞清楚边界。

picture.image

能做的

  • 打开App、点击坐标、滑动屏幕

  • 输入文本、截屏、获取当前界面UI树

  • 安装卸载App、获取设备信息

不能做的

  • 无法像浏览器那样直接捕获元素(需要用坐标或UI树定位)
  • 无法直接获取控件文本(需要解析UI XML)

picture.image 版本限制:影刀创业版/企业版内置了手机自动化功能,社区版不支持

第一步:ADB环境配置

ADB(Android Debug Bridge)是电脑和安卓手机通信的工具。电脑要跟手机“对话”,ADB就是那个翻译官。

picture.image

方式一:使用影刀自带的ADB(推荐)

影刀安装包自带了ADB工具,不用额外下载。

picture.image 找到影刀自带的ADB

  1. 打开影刀安装目录,找到support_xxx/mobile文件夹
  2. 在该路径中输入cmd并回车打开命令窗口
  3. 输入adb devices并回车,如果能输出设备信息说明ADB可用

picture.image

picture.image 或者通过影刀应用来找:

  1. 新建一个手机自动化应用
  2. 点击应用名称编辑按钮,打开应用所在位置

picture.image 3. 退回上一级目录,搜索adb,打开文件所在位置

  1. 在该路径中打开cmd,输入adb,能输出帮助信息就没问题

方式二:手动下载ADB并配置环境变量

如果影刀自带的ADB用不了,也可以手动下载。

  1. 搜索“ADB platform tools”下载,解压到C:\adb
  2. C:\adb添加到系统Path环境变量
  3. 或在影刀中直接使用ADB的绝对路径

配置环境变量的关键步骤(以小米手机为例):

  1. 新建环境变量ANDROID_HOME,值为影刀ADB所在路径(如C:\ProgramData\ShadowBot\support_X86\mobile\AndroidSDK
  2. 在Path环境变量中新增一行,指向ADB目录

如果环境变量配错了,影刀可能连不上手机。检查Path变量中是否有C:\Windows\system32,同时确认没有错误配置ANDROID_ADB_SERVER_PORT等变量。配置完后重启影刀才能生效。

第二步:手机端设置

手机端的设置是最容易出问题的环节。

开启开发者选项

  1. 打开手机“设置”→“关于手机”
  2. 连续点击“版本号”7次,直到提示“已进入开发者模式”

开启USB调试

picture.image

  1. 回到“设置”→“系统和更新”→“开发者选项”(不同手机路径略有不同)
  2. 开启“USB调试
  3. 开启“USB安装”(部分手机需要)
  4. 开启“USB调试(安全设置) ”(部分手机需要)

注意:USB调试在ADB连接阶段就必须开启;USB调试(安全设置)在后续建立自动化会话时才起作用。有的手机没有“USB调试(安全设置)”这个选项,默认是开启的。但OPPO手机这个选项默认是关闭的,很多连接失败都是因为这个没开。

用数据线连接电脑

  1. 用数据线将手机连接到电脑
  2. 手机上选择USB连接方式为“传输文件(MTP)
  3. 手机会弹出“允许USB调试”弹窗,点击“确认

一个容易被忽略的细节:USB线必须支持数据传输,充电线不行。杂牌数据线经常只有充电功能没有传输功能。建议用手机原装数据线

验证连接是否成功

在命令行中输入:

adb devices

如果看到类似这样的输出,说明连接成功:

List of devices attached
1234567890abcdef    device

第三步:影刀手机管理器配置

picture.image ADB连上了,不代表影刀能用。还需要在影刀里完成配置。

picture.image

安装Android自动化组件

  1. 打开影刀首页的“设置中心
  2. 点击“自动化插件”中的“Android自动化组件
  3. 手机管理器打开后会自动检测当前机器是否已安装自动化环境,未安装则会提示安装

注意:手机检测工具中的“已连接”≠手机管理器中的“已连接”。手机检测工具显示已连接只代表ADB工具可以正常连接,成功安装三个插件后影刀手机管理器中才可正常连接

在手机管理器中添加设备

  1. 打开影刀的“手机管理器
  2. 点击“添加设备”,选择已连接的手机
  3. 手机端会提示安装Appium等辅助应用,点击“允许”安装

如果手机没有提示安装应用,一般是没有开启“允许USB安装”权限。去开发者选项里检查一下。

第四步:影刀手机自动化基本指令

配置好ADB后,在影刀右侧指令面板的“手机自动化”分类下就能看到相关指令了。

连接手机

在流程开头拖入“连接手机”指令,选择已连接的设备ID。

点击屏幕

有两种方式:

方式一:坐标点击——用“点击屏幕”指令,输入坐标X,Y。

方式二:元素点击——用“点击元素”指令,基于UI树定位。

滑动屏幕

用“滑动屏幕”指令,设置起始坐标和结束坐标,可设置滑动时间。

输入文本

用“输入文本”指令,配合点击输入框使用。

截图

用“截图”指令,保存手机屏幕。

获取UI树

用“获取UI树”指令,分析当前页面元素(类似网页的XPath)。

第五步:元素定位——手机自动化最难的部分

网页自动化有XPath,手机自动化靠的是UI树(类似网页的DOM)。

捕获元素

点击影刀的“捕获元素”按钮,手机屏幕会投射到电脑上,选择元素后生成定位路径。

但这里有一个大坑:不同手机型号、不同软件版本,同一个元素的底层源码可能不同。在一台手机上能捕获到的元素,换一台手机可能就捕获不到了。

动态元素捕获技巧

方法一:XPath定位。通过XPath方式获取元素,比默认捕获更稳定。

方法二:元素锚点。开启“元素锚点”后,可为目标元素自动/手动添加一个锚点(如输入框的标题、固定文本),运行时先定位到锚点,再定位到目标元素。

方法三:文字定位+偏移量。如果元素不可捕获但文字可见,通过识别界面上的文字内容定位目标区域,再根据文字与实际点击点的相对偏移量执行操作。

坐标获取

手机自动化里坐标是绕不开的。获取坐标的方法:

  1. 在手机管理器的投屏画面上,鼠标悬停就能看到坐标
  2. 用“获取元素位置”指令获取元素的坐标
  3. 用ADB命令adb shell wm size获取手机分辨率,按比例推算坐标

坐标点击的适用场景:元素位置固定不变的情况。如果页面会滚动,需要配合滑动让元素进入可见范围。

第六步:无线连接(拔掉数据线)

每次用数据线连着电脑做自动化,手机不能离身,很不方便。影刀支持无线ADB连接

配置步骤

  1. 手机和电脑需连接在同一WiFi
  2. 手机开启开发者选项和USB调试模式
  3. 先用数据线连接手机,选择“传输文件”模式
  4. 在命令行中输入:adb tcpip 5555
  5. 拔掉数据线,在命令行中输入:adb connect <手机IP地址>:5555
  6. 手机开发者模式中的“选择USB配置”选择“RNDIS(USB以太网)
  7. 输入adb devices查看连接状态,看到手机IP:5555 device表示成功
  8. 可以拔掉数据线了

注意:拔掉数据线时可能会短暂断开,手机会自动再次弹出USB调试弹窗,确认即可。

第七步:高级ADB命令(影刀未封装的)

影刀内置指令覆盖了大部分场景,但有些操作需要直接用ADB命令:

  • 模拟物理按键(音量键、电源键)
  • 获取设备信息(分辨率、Android版本)
  • 安装/卸载APK
  • 截屏并拉取到电脑
  • 执行Shell脚本

在影刀里用“运行命令行”指令执行ADB命令。

常用ADB命令速查

操作ADB命令
查看连接设备adb devices
点击坐标adb shell input tap x y
滑动adb shell input swipe x1 y1 x2 y2 duration
输入文本adb shell input text "内容"(需处理空格和特殊字符)
截屏adb exec-out screencap -p > local.png
按返回键adb shell input keyevent KEYCODE_BACK
启动Appadb shell monkey -p 包名 1
获取UI XMLadb shell uiautomator dump

一个实战示例:自动刷抖音视频

# 1. 启动抖音App
运行命令行("adb shell monkey -p com.ss.android.ugc.aweme 1")

# 2. 等待加载(固定等待3秒)
等待(3000)

# 3. 向上滑动(模拟刷视频)
# 分辨率1080x1920时,屏幕中心X=540,底部Y=1500,顶部Y=500
运行命令行("adb shell input swipe 540 1500 540 500 300")

# 4. 随机等待4~8秒(模拟观看)
随机等待(4000, 8000)

# 5. 循环步骤3-4

八个容易踩的坑(我全踩过)

坑一:手机连不上——数据线问题

现象adb devices看不到设备。

原因:数据线不支持数据传输。

解决方法:换手机原装数据线,确保支持数据传输。如果有多条数据线,交叉测试确认是线的问题还是手机的问题。

坑二:手机连不上——驱动问题

现象:电脑识别不到手机。

解决方法:先下载360手机助手连接手机,它会自动安装驱动。驱动装好后,把360手机助手卸载掉——它会干扰影刀的正常执行,每秒可能中断一次流程。

坑三:手机连不上——USB调试权限没开全

现象:ADB能识别设备,但影刀连不上。

解决方法:检查开发者选项——USB调试、USB安装、USB调试(安全设置)三个都打开。OPPO手机特别注意“USB调试(安全设置)”这个选项。

坑四:手机管理器显示黑屏

现象:手机管理器能连接上,但画面是黑的。

原因:99%是环境变量配置错误

解决方法:检查当前影刀的启动路径和环境变量的路径是否对应。如果重启影刀不生效,重启电脑

坑五:捕获元素很卡

现象:连接上手机后,捕获元素时非常卡,点击“主页”命令响应很慢。

原因:可能是手机性能问题或USB传输速度慢。

解决方法:尝试换USB口、换数据线,或改用无线连接。

坑六:输入中文失败

现象:用“输入文本”指令输入中文,结果只输入了英文或乱码。

原因:ADB的input text命令对中文支持不好。

解决方法

  • 确保手机输入法是中文输入法且处于激活状态
  • 或者用影刀的“模拟输入”指令,配合确保系统输入法是中文

坑七:不同手机元素定位不一致

现象:在一台手机上能捕获的元素,换一台手机捕获不到。

原因:不同手机型号、不同软件版本,元素底层源码不同。

解决方法:使用动态元素捕获方式,通过XPath获取元素。或者用元素锚点功能,先定位固定文本再定位目标元素。

坑八:防火墙拦了

现象:日志报错“请确认设备连接且USB调试开启”。

原因:Appium服务启动时需要连接网络,被Windows防火墙拦截了。

解决方法:关闭Windows防火墙后重启影刀。

多手机群控

一台电脑能同时控制多台手机吗?可以。

但有限制:一台电脑最稳定的是群控15台手机左右。想要控制更多,需要增加电脑,或者用USB扩展坞。

群控的实现方式:用“连接手机”指令选择“运行时连接的所有手机”,配合“并发调用子流程”使用。每台手机独立执行同一个流程,互不干扰。

常见问题速查

问题现象根本原因修复方法
adb devices看不到设备数据线不支持传输/驱动未装换原装数据线,用手机助手装驱动
影刀连不上但ADB能看到USB调试权限没开全开启USB调试、USB安装、USB调试(安全设置)
手机管理器黑屏环境变量配置错误检查Path变量,重启影刀或电脑
捕获元素很卡USB传输慢或手机性能问题换USB口/数据线,或用无线连接
输入中文失败ADB对中文支持不好确保手机输入法是中文,或用模拟输入
换手机后元素捕获不到不同手机元素源码不同用XPath定位或元素锚点
防火墙拦了连不上Windows防火墙拦截关闭防火墙后重启影刀

推荐资源

  • 影刀官方帮助文档搜索“手机自动化”或“ADB
  • 影刀社区搜索“手机自动化”或“连接手机”,有大量踩坑分享
  • 影刀B站官方账号搜索“手机自动化”,有视频教程
  • 语雀搜索“影刀RPA 手机自动化各种问题合集”,有保姆级问题汇总

#影刀RPA #RPA自动化 #手机自动化 #ADB #安卓自动化 #电商自动化

作者:林焱

本文为《影刀RPA学习手册》系列文章之一,内容源于实操经验的整理与分享。如果这篇文章对你有帮助,欢迎点赞收藏,下一篇我们聊“Windows桌面自动化与图像识别的完整方案”。

0
0
0
0
评论
未登录
暂无评论