Python+scrcpy+pyminitouch实现自动化(二)——pyminitouch的安装

一、什么是pyminitouch?

minitouch是openstf基于ndk + Android开发的用于模拟人类点击行为的操作库。这个库以高稳定性、反应快著称,比起adb操作与uiautomator两分钟搞懂UiAutomator自动化测试框架 - 知乎)都要更灵敏,被广泛应用于Android设备的精细操作。

然而它的使用与其安装方式都较为繁琐,无法定位打元素,使得它在自动化的应用领域上远远比不上uiautomator。它的体验感也较为一般,么此都要给手机重复安装指定版本的minitouch、建立、socket、然后再编辑操作命令,而且操作命令也很难阅读清楚。

pyminitouch = python + minitouch,降低使用成本,直接使用简洁的API调用

二、安装minitouch

准备工作:

(1)minitouch需要ndk,ndk下载:NDK 下载  |  Android NDK  |  Android Developers

(2)下载相应的压缩包后进行解压。

(3)讲解压的目录添加到path环境变量中。

右击我的电脑->属性->高级系统设置->环境变量->找到path变量->新建->将文件目录路径粘贴进去

(4)运行ndk -build看是否运行成功,若像下面一样运行成功则说明安装成功。

最后出那个错是因为它找不到Android项目。

(5)安装adb:https://dl.google.com/android/repository/platform-tools-latest-windows.zip

将下载下来的文件添加到环境变量中,方法如上面的步骤。如果安装成功执行adb会有相应的提示。

minitouch的下载:

下载需要自行安装git,windows系统不像Linux自带git功能:

 

  • 一直往下安装就可以了

  • 下载项目源码

git clone https://github.com/openstf/minitouch.git

  •  进入minitouch的目录,执行下面的命令:

cd C:\Users\auus\minitouch

进入文件夹后,按顺序执行下面两句:

git submodule init
git submodule update

执行到这一步后,再次执行ndk-build

 

在文件中出现以上则说明安装成功。

三、安装pyminitouch

需要在python 3 上安装:

pip install pyminitouch

四、开始研究任务

  • 在cmd中输入下面语句查询自己设备的平台:

adb shell getprop ro.product.cpu.abi

  •  将minitouch文件push到设备上(注意:Android的有些目录是无法之心结果二进制文件的,所以一般放在/data/local/tmp目录中)
adb push minitouch /data/local/tmp

  •  进入文件夹查看文件,进入shell模式
adb shell
  • 切换到/data/local/tmp目录
cd /data/local/tmp
  • 执行命令查看minitouch是否存在,存在则就安装完成
ls

  •  如果使用时提示没有权限,使用shell模式进入/data/local/tmp目录执行
chmod 751 minitouch

在上面的步骤我们已经实现将minitouch push到手机上了。

  • 使用pyminitouch

首先,我想使用pyminitouch显示出我手机支持最大的x以及最大的y也就是屏幕的分辨率:

from pyminitouch import safe_connection, safe_device, MNTDevice, CommandBuilder

_DEVICE_ID = '35501e57'

device = MNTDevice(_DEVICE_ID)

# print the maximum x and Y coordinates
print("max x:", device.connection.max_x)
print("max y:", device.connection.max_y)

 虽然代码看起来没什么问题,但是它运行起来有这个报错:

AssertionError: minitouch did not work.

 那就是我刚刚装进去的minitouch并没有工作,输入以下命令:

adb kill-server
adb start-server

之后再次编译发现...好的,问题并没有解决...


最后,我要准备去考研啦,考完研再继续学习把!!希望我考研顺利!!!

  • 6
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

郑烯烃快去学习

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值