python获取控件坐标_Appium+python自动化(二十二)- 三个臭皮匠顶个诸葛亮-控件坐标获取(超详解)…

第二种方法(Uiautomatorviewer)

上很多推荐获取坐标点的方式,是使用 android-sdk/tools 目录下,提供的 uiautomatorviewer 工具来获取。但是这种方式非常的繁琐,而实际上,我们又不需要如此精确的坐标点,毕竟控件那么大,只要点击的坐标落在控件的位置上,即可。

Uiautomatorviewer是Android sdk自带的工具,位置在sdk/tools下。

工具打开方法:

1.sdk/tools下,找到uiautomatorviewer,双击打开

2.在cmd命令行,直接输入uiautomatorviewer,打开该工具

2.打开模拟器中指定的app,在uiautomatorviewer中截图指定页面

需要注意的是,你的手机设备或模拟器的api要在16以上,也就是android版本得是4.1以上,因为这个工具是google在4.1以后推出来的,只适用于4.1以后的版本

4.结果分析

从上图中,可以获取到对应控件的ID及控件左上角、右下角的坐标。

1)对于控件坐标而言,这里很简单,我们一般取中点坐标,即:

中点坐标=((左上角横坐标+右下角横坐标)/2,(左上角纵坐标+右下角纵坐标)/2)

如,上图中,中点坐标即((30+1009)/2,(268+314)/2)=(519.5,291)

注:坐标一般取整。

由此,我们可以得到所需控件的坐标,在脚本中,直接touch该点坐标即可。

2)对于控件ID而言,即上图中的红色框中部分,同样在脚本中,直接touch该ID即可。

另外,利用uiautomatorviewer还可以获取父级与子级控件之间的关系,获取到的关系同HierarchyViewer保持一致。

uiautomatorviewer就介绍到这里。

第三种方法(Pointer location获取坐标)

那么我推荐另外一种更简单的方式,来获取当前你看见的,在待测试设备上的控件的坐标点的定位方式。那就是利用 Android 设备的开发者选项。

这里以夜神模拟器为例:

1.点击设置

3.在指针位置 ,将这个属性开启之后,当手指在屏幕上滑动的时候,就可以在顶部看到当前触摸点的 X、Y 轴的坐标,这就是我们需要的。

2.点击关于平板电脑

4.返回设置菜单

021232qcnnm2znjjna6bj5.png教程到此结束O(∩_∩)O~~

文章知识点与官方知识档案匹配,可进一步学习相关知识Python入门技能树首页概览208564 人正在系统学习中 相关资源:iZotope Ozone VST (臭氧) V4.0.3.274 绿色汉化版.zip-制造工具类…

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年1月2日
下一篇 2021年1月2日

相关推荐