第二种方法(Uiautomatorviewer)
网上很多推荐获取坐标点的方式,是使用 android-sdk/tools 目录下,提供的 uiautomatorviewer 工具来获取。但是这种方式非常的繁琐,而实际上,我们又不需要如此精确的坐标点,毕竟控件那么大,只要点击的坐标落在控件的位置上,即可。
Uiautomatorviewer是Android sdk自带的工具,位置在sdk/tools下。
工具打开方法:
1.sdk/tools下,找到uiautomatorviewer,双击打开
2.在cmd命令行,直接输入uiautomatorviewer,打开该工具
打开该工具后,我们就可以开始使用了。
运行环境:Windows
使用方法:
1.连接模拟器或真机(我们这里使用模拟器)
2.打开模拟器中指定的app,在uiautomatorviewer中截图指定页面
3.截图成功后,页面显示如下:
需要注意的是,你的手机设备或模拟器的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.点击设置
2.点击开发者选项
3.在指针位置 ,将这个属性开启之后,当手指在屏幕上滑动的时候,就可以在顶部看到当前触摸点的 X、Y 轴的坐标,这就是我们需要的。
注意:开发者选项不是默认可见的,你需要自行开启开发者模式,之后再进行此操作。(这不是可以上网自已查一下,如果是夜神模拟器,可以参考宏哥的小结部分开启开发者选项)
小结
(1)安卓系统开启开发者模式方法很多,我们模拟器是6.3.0.0版本这里只讲适合夜神模拟器的方法,
接下来进入图文教程:
1.点击设置
2.点击关于平板电脑
3.点击7下版本号(手残请点击20下),点击箭头指向处的版本号(最底下的版本号),而不是上面的Android版本号
4.返回设置菜单
这里补充一点,如果感觉开发者这个选项碍眼,可以选择关闭,关闭方法:
设置--应用--全部--找到设置软件,点击进入--清除数据
这样开发者模式又隐藏了~~
教程到此结束O(∩_∩)O~~
2、好了,今天关于控件坐标点获取就到这里了!哈哈!最后祝大家都能熟练掌握!!!
您的肯定就是我进步的动力。如果你感觉还不错,就请鼓励一下吧!记得点波推荐 哦!!!(点击右边的小球即可)