Skip to main content

OTG HID教程

说明

  • 目前iOS支持ESP32S3的开发板
  • OTG的模拟动作和代理ipa的所有功能都不冲突,可以组合使用,也可以分开使用
  • OTG的方案,可以不安装代理ipa,直接使用image.captureFullScreenNoAuto截图,与市面上其他的硬件方案不同,这截图函数不走屏幕镜像,极大的避免风控检测,而且不受蓝牙干扰
  • 固件是免费的,开发板自己去淘宝、拼多多、1688去买,开发板图片
  • 由于数据线被OTG占用,建议使用三合一的转接头,可以了链接网线、OTG开发板、充电三种功能

下载固件

  • 请到网盘iOS资源文件夹-USB版本-OTG固件文件下载对应开发板的固件
  • 固件目前只有ESP32S3版本,并且只支持iOS 17+以上系统

刷入固件

  • 刷入固件和安卓是一样,这里不再重复,参考安卓蓝牙刷入固件
  • 刷入的时选择iOS USB的OTG固件,不要选择错了
  • 获取的mac地址也参考安卓版本如何获取

设备与OTG绑定

  • 建议将开发板上面写上MAC地址标签,手机上也贴上对应的MAC地址标签,方便管理和对应
  • 打开iOS USB中控,选择一个设备,鼠标右键菜单,选择OTG HID设置-绑定OTG设备
  • 选择一个已经链接的串口,如果找不到串口,可以去掉只显示已绑定的,然后强制刷新,上述都找不到,也可以直接在MAC地址输入框输入 MAC地址的后8位,绑定即可
  • 绑定完成后,在中控的列表中,可以看到蓝牙/OTG MAC一栏就是绑定的OTG硬件了

OTG 联网

  • iOS USB中控,选择一个设备,鼠标右键,选择OTG HID设置-**设置WIFI(配网)**功能
  • 填写需要链接的 wifi ssid和密码,然后点击设置,完成后进行重启开发板,或者重新拔插

OTG IP地址扫描

  • 中控请求OTG,需要扫描到ip才行,所以先配网,在扫描OTG设备IP
  • iOS USB中控,选择一个设备,鼠标右键菜单,选择OTG HID设置-扫描开发板IP
  • 扫描完成后,会在中控的蓝牙/OTG 硬件IP 一栏显示扫描到的ip地址
  • 完成后绑定和联网,就可以不用链接电脑了,因为电脑只是用来设置信息和绑定使用

手机开启无线调试

  • 由于使用OTG,需要占用数据线,只能采用无线调试模式,让手机链接到中控
  • 先进入手机设置-通用-传输或还原iPhone,点击还原按钮,选择还原位置与隐私,这一步是用来抹除手机和电脑的信任关系
  • 电脑上安装好爱思助手,用数据线将手机插入电脑,会弹出信任窗口,请信任即可
  • 爱思助手选择工具箱,选择爱思投屏,这个会安装Bonjour服务,是无线调试的关键,跟着提示一路安装下来,直到进程管理器-Bonjour服务启动即可
  • Bonjour启动完成,来到iOS USB中控,鼠标右键,找到无线调试开关-开启无线调试,然后重启手机,即可看到手机会以无线的方式连接到电脑,链接方式变成Network

测试OTG功能

  • 手机开启无线调试,刷入固件等都完成的情况下,进行这一步功能测试
  • 按照本章节的常见问题OTG手机需要开启哪些选项,开始设置好所有配置
  • 将OTG设备链接到手机,可以看到手机上有鼠标小圆点,也可能在手机设置-以太网里面看到-EasyClick NCM+HID input,代表手机识别到了OTG
  • 在iOS USB 中控选择一个设备,鼠标右键菜单,选择OTG HID设置-测试OTG
  • 上述都配置完毕,然后点击鼠标移动或者HOME按键,如果观察到手机上面有动作,代表成功

键盘快捷键

  • 该功能是为了配合手机设置-辅助功能-键盘与键入,全键盘控制中的命令,完成键盘快捷键的使用,同时配置好后在脚本中也可以使用
  • 中控右键菜单,蓝牙BLE设置-新增键盘快捷键菜单
  • 案例:
    • 可以打开手机设置-辅助功能-键盘与键入,全键盘控制中的命令,下拉找到 通知中心,点击一下,会有提示键盘快捷键对话框
    • 在中控的键盘快捷键的对话框中,组合键选择gui,字符输入 b,点击发送,可以看到手机上面的 键盘快捷键对话框中的快捷键变化了,点击完成
    • 在中控的键盘快捷键的对话框中,组合键选择gui,字符输入 b,点击发送,手机上即可切换到通知中心
  • 其他的快捷键,以及快捷指令的快捷键都是这样的绑定,同时脚本中也是使用 otgEvent.keyPressChar进行快捷键调用

输入功能

有代理IPA情况

  • 如果你有代理IPA,可以自动启动自动化,那就直接使用代理的模式进行输入,例如调用 inputText 函数

自定义输入法

  • 没有代理ipa,但是有安装EC脱机版本主程序作为输入法的,可以使用imeApi模块,需要先开启imeApi.forwardImeServer转发服务,才能调用其他的imeApi其他函数

没有代理IPA也没有输入法

  • 到EC官方网盘。文件夹是--- iOS资源-iOS快捷指令助手.zip*下载这个文件,然后解压后双击运行
  • 利用快捷指令进行请求网站接口内容并复制到剪切板,然后在进行粘贴动作
  • 案例
    • 在手机,快捷指令新建一个指令内容如下
    • 解释:
      • 以下的说明都是基于 iOS快捷指令助手 程序的
      • http://192.168.2.26:8696 这个是iOS快捷指令助手所在的电脑地址
      • key=4eb2e1c1,代表手机的唯一标识,这里使用的是MAC地址,也可以使用其他的,目标是区别是哪个手机
      • 设备震动,是为了在后台也能获取到数据,放到剪切板
      • 最后回调suc接口,是为了告诉程序,这个指令执行成功了
    • 快捷指令配置完成后,请到手机设置-辅助功能-键盘与键入-全键盘控制-命令选项,划到最下,找到刚才新建的快捷指令的名称,这里的案例叫获取URL内容,点击一下
    • 在中控,绑定这个指令的快捷键,右键蓝牙BLE设置-新增键盘快捷键输入你自己的快捷,这里输入的组合键是gui,字符是u,点击发送,然后在手机上点击完成
    • 再一次在蓝牙BLE设置-新增键盘快捷键输入刚才的字符和组合键,点击发送,即可在看到快捷指令执行效果
    • 配置稍微麻烦一些,但是完成后可以分享给其他的手机,具体可以自己百度如何分享快捷指令
    • 在脚本代码中如何使用,请看这个链接脚本代码中使用快捷指令进行输入

视频图片功能

有代理IPA情况

  • 直接利用代理ipa插入视频图片到手机相册

没有代理IPA

  • 到EC官方网盘。文件夹是--- iOS资源-iOS快捷指令助手.zip*下载这个文件,然后解压后双击运行
  • 利用快捷指令下载视频到相册
    • 案例:
      • 新建快捷指令参考 没有代理IPA也没有输入法的新建和绑定键盘快捷键,这里给快捷指令的截图

      • 这里测试案例绑定的是 gui+i 快捷键
      • 为什么快捷键指令调用两次获取URL内容,因为第一次返回真实资源的地址URL,第二次获取的资源内容
      • 在脚本代码中如何使用,请看这个链接脚本代码中使用快捷指令进行插入相册

常见问题

手机开启不了无线调试

  • 先进入手机设置-通用-传输或还原iPhone,点击还原按钮,选择还原位置与隐私,重新插入电脑进行信任
  • 一定要开启Bonjour服务,保证手机网络和电脑网络在同一个局域网,并且能够ping通,Bonjour服务参考 https://m.i4.cn/article/55710.html
  • 如果在iOS USB中控开启不了远程调试,可以使用爱思助手-功能开关-开启WIFI调试链接 开关

OTG 手机需要开启哪些选项

  • 设置 -> 辅助功能 -> 触控 -> 辅助触控,打开辅助触控开关
  • 设置 -> 辅助功能 -> 触控 -> 辅助触控,找到 “跟踪灵敏度”:将其拉到最左侧(龟速)
  • 设置 -> 辅助功能 -> 触控 -> 辅助触控 ,打开执行触控手势,打开显示屏幕键盘,如果想要点击有声音,就打开点按声音选项
  • 设置 -> 辅助功能 -> 触控 -> 辅助触控-鼠标键,初始化延迟和最大速度拉倒最左侧,可以开启鼠标键、Option键切换、使用主键盘
  • 通用-触控板与鼠标-跟踪加速度,拉到最左侧
  • 设置-辅助功能-键盘与键入,打开全键盘控制
  • 设置-辅助功能-键盘与键入,进入命令选项,可以自定义键盘的快捷键,以及快捷指令的快捷键

如何配合脚本使用

  • 在idea图色面板中,使用 无自动化抓图 按钮截图,测试的时候 也使用 实时测试(无自动化) 按钮
  • 脚本使用的时候就用 image.captureFullScreenNoAuto,或者 image.startPreCapScreen 预截图,加快速度
  • 除了节点功能不能使用,OCR、YOLO、图色、模版匹配 等都可以正常使用的

绝对坐标

  • 起始坐标不对,一般起始坐标都是0,0,如果不对就重启手机即可

中控提示无线串口名称

  • 重启中控即可
  • 刷入固件后,关闭刷入固件软件,再开启中控防止冲突