参考文章:【自动化技术】Autojs从入门到精通
参考文章:AutoXJS开发入门简介菜鸟教程
参考文章:关于Auto.js的下架说明
参考文章:Auto.js 4.1.0 文档
文章目录
- 008--【环境搭建】 5、autojs插件安装和使用
- 搜不到hyb1996插件,改为Auto.js-Autox.js-VSCodeExt插件
- 测试插件
- 新建demo.js
- 调用插件命令
- 开启服务并监听adb设备
- 手机autox.js app上连接电脑(手机auto.js无法连接vscode Autox.js-VSCodeExt服务9317 TCP端口问题排查)
- vscode上编写脚本并在手机上执行(run)
- 将vscode上的脚本保存到手机(save on device)
- 停止脚本
- 其他说明
- 注意auto.js普通版本和pro版本 vscode插件冲突的问题(一个开启,另一个最好禁用)
- 如果是auto.js pro版本,貌似是手机开服务,然后用vscode auto.js pro插件去连手机,而不是手机主动连电脑的vscode
- 009--【环境搭建】6、autojs手机端(模拟器端)和电脑端相互连接
- 010--【环境搭建】7、编写第一个autojs脚本并打包成apk(略)
008–【环境搭建】 5、autojs插件安装和使用
https://www.bilibili.com/video/BV1LF411U7GS/?p=8
搜不到hyb1996插件,改为Auto.js-Autox.js-VSCodeExt插件
老师让搜hyb1996插件,但是我搜不到:
我只搜出来这些:
这个Auto.js-Autox.js-VSCodeExt
插件下载量挺多的,估计也能用
点击安装,安装插件。
测试插件
新建demo.js
调用插件命令
开启服务并监听adb设备
敲ctrl + shift + p,搜索auto.js,能看到auto,js插件的一堆命令:
我们点击开启服务并监听ADB设备:
右下角显示如下,这些ip是我笔记本电脑的各个ip地址(包含虚拟网卡的):
手机autox.js app上连接电脑(手机auto.js无法连接vscode Autox.js-VSCodeExt服务9317 TCP端口问题排查)
在投屏手机上打开autox.js,然后连接电脑,因为它这个是用wifi局域网的,我查看我笔记本无线网ip地址是192.168.2.31,于是我用ip 192.168.2.31连接,提示连接失败了:
我用查看端口发现电脑上9317端口是ok的,并且可以看到它监听的是tcp端口:
然后在手机上用网络百宝箱工具发现手机能ping通电脑,但是无法探测到9317端口:
我怀疑是我的电脑防火墙禁用了9317 tcp端口的入站流量,我添加一个入站授权试试:
参考文章:局域网ntp服务器设置(windows时间同步服务器NetTime)(ubuntu systemd-timesyncd ntp客户端)123端口、ntp校时、ntp同步(设置UDP入站流量绕过防火墙)
取名为:Autox.js-VSCodeExt TCP 9317 Inbound
:
发现还是不行(全部开启防火墙就可以),于是我又增加开启了9317 tcp端口的出栈流量Autox.js-VSCodeExt TCP 9317 Outbound
,发现还是不行:
然后我删除出站流量配置,尝试将vscode用管理员权限启动,发现还是不行。
然后我去问知乎,有个大佬说,禁用规则的优先级是高于允许规则的,看看是不是哪禁用了。我点开发现好像确实有个地方:
(点击“允许应用或功能通过Windows Defender防火墙”)
(双击vscode)
(然后在vscode左边打上勾,然后点击确定,这一步非常重要!)
然后我们在手机上探测9317端口,发现可以探测到了:
关于防火墙设置,可以参考这篇文章:Windows防火墙:“Windows允许应用或功能通过Windows Defender防火墙”与“入站规则、出站规则”优先级(注意:“出站规则”限制对象是“目标端口”而非“源端口”)明确拒绝优先原则
vscode上编写脚本并在手机上执行(run)
我们在demo.js中输入:
toast('This is a test')
然后按F5,或者ctrl + shift + p,搜索“auto”,点击“运行脚本”:
可以看到手机上打印出了我们想要打印的消息:
将vscode上的脚本保存到手机(save on device)
ctrl + shift + p,搜索“auto”,点击“save on device”:
然后选择设备:
然后手机上会提示“保存成功,请刷新目录”:
然今我们下拉刷新目录,发现脚本被保存在手机中了:
停止脚本
可以点击“停止当前脚本”或“停止所有脚本”:
其他说明
注意auto.js普通版本和pro版本 vscode插件冲突的问题(一个开启,另一个最好禁用)
如果是auto.js pro版本,貌似是手机开服务,然后用vscode auto.js pro插件去连手机,而不是手机主动连电脑的vscode
009–【环境搭建】6、autojs手机端(模拟器端)和电脑端相互连接
然后up在这里改用逍遥模拟器了,说用雷电模拟器跟PC不在一个局域网。我试了一下雷电模拟器,确实跟PC不在同一个局域网,模拟器的ip是172.16.1.4,我的PC的ip是192.168.2.31,但是模拟器还是可以ping通PC的,虽然PC无法ping通模拟器(这里雷电模拟器可能使用了类似docker的网桥)。
因为我们没有用auto.js pro,服务端在PC的vscode上,所以用这个雷电模拟器还是可以连上PC的:
看到这:https://www.bilibili.com/video/BV1LF411U7GS/?p=9 9分20秒