记一次在termux上部署python+uiautomator2实现手机上直接跑代码
termux的安装
- 参考Termux 入门与实践 - 简书 https://www.jianshu.com/p/6fd84cc74a5e
- 一定记得执行termux-setup-storage给访问内部存储权限
安装Python及其相关依赖库
pkg upgrade
pkg install python
pip install cython
pkg install libxml2 libxslt
pkg install -y python ndk-sysroot clang make libjpeg-turbo
pkg install clang
pip install lxml
pip install --pre uiautomator2
没有报错既安装成功
termux里安装adb
- 1.下载adb文件解压 链接:https://pan.baidu.com/s/1FjS67MuALc2NuRfR3IsWug 提取码:lppk
- 2.解压刚刚下载的压缩包,之后在termux下执行
mv storage/xxxx/arm/adb $PREFIX/bin xxxx代表你的具体路径;$PREFIX/bin为固定值
- 3.给adb可执行权限
chmod +x $PREFIX/bin/adb
- 4.在termux里面输入adb,弹出相关参数即正常
运行基于uiautomator2编写的代码
- 1.在电脑上用数据线连上安装termux的手机,手机开usb调式,然后执行
python -m uiautomator2 init
安装相应apk到手机上,有则省略 - 2.在cmd下执行
adb tcipip 5555
开adb网络调式 继续执行adb connect ip
连接成功则开启adb网络调式成功 - 3.将电脑上编写好的uiautomator2代码移到手机得download下,在termux里面 执行
mv ~/storage/downloads/xx.py ./
- 4.输入
python xx.py
此处需要注意应将代码中的连接方法改写成d = u2.connect("0.0.0.0")
以上所有命令如无特别说明均在termux里面操作,测试机型为魅蓝note6,华为及其荣耀系列,因部分机型无法开启adb网络调试,故不能运用此方法
- 有朋友试过荣耀8和荣耀v20可以进行网络调试
本文为原创,如果转载请注明出处;