开发者选项里面把 Pointer location打开后,就可以直接在ui界面的上方看到坐标值。
通过使用adb shell getevent,可以得到如下设备操作后的指令,具体表示的含义,可以参考网上很多的文章,这里就不再叙述
这里的0035和0036分别表示屏幕上的X坐标和Y坐标,后面的值表示具体的坐标点,通过16进制转换可以得到值1142和1527,而我手机的屏幕分辨率为800*480的,很明显两个点是完全不匹配,那如何转换呢?
在cmd中输入adb shell getevent -p
找到您的屏幕设备中0035和0036的含义,我的手机中可以看到x的值min为0,max为1172,y的值min为0,max为1900。
这样就找到您的设备的坐标具体大小值,这里计算公式如下:
x=(x-xmin)*480/(xmax-xmin) ;
y=(y-ymin)*800/(ymax-ymin);
这样算出的坐标值就跟您手机的屏幕分辨率相匹配了。
该公式是通过查看androidvncserver源码,然后反向推出的公式,目前碰到的手机min都为0,未测试过不过为0的情况,如果不为0的情况这个公式是错误的,请各位同学补充。
reference:
https://blog.csdn.net/applezp/article/details/7651885
推荐链接:
https://blog.csdn.net/yin1031468524/article/details/71909193
方法一:开发者选项里面把 Pointer location打开后,就可以直接在ui界面的上方看到坐标值。方法二:通过使用adb shell getevent,可以得到如下设备操作后的指令,具体表示的含义,可以参考网上很多的文章,这里就不再叙述这里的0035和0036分别表示屏幕上的X坐标和Y坐标,后面的值表示具体的坐标点,通过16进制转换可以得到值1142和1527,而我手机的屏幕...
在
Android
开发过程中,有时需要获取
触摸
位置的
坐标
,以便作进一步处理,比如做炫酷的动画效果,或者响应其他操作。
本文简单介绍
Android
中
触屏
操作时,
触屏
的开始位置、当前位置、结束位置。
<RelativeLayout xmlns:
android
=http://schemas.
android
.com/apk/res/
android
xmlns:tools=http://schemas.
android
.com/tools
android
:layout_width=match_parent
android
:layout_height=match_paren
findButton 设置
得到
坐标
后可以操作了,例如
adb
shell
input tap `findButton 设置`
4.需要注意的是按钮的文本是精确匹配,如果有空格什么的,就找不到了哦
5.当然你可以自己根据自己的需求修改脚本
这里的0035和0036分别表示
屏幕
上的X
坐标
和Y
坐标
,后面的值表示具体的
坐标
点,通过16进制转换可以得到值1142和1527,而我手机的
屏幕
分辨率为800*480的,很明显两个点是完全不匹配,那如何转换呢?
在cmd中输入
adb
shell
ge
adb
shell
get
event
-p | grep -e "0035" -e "0036"
获得
event
体系里 宽(0035)和高(0036)
以当前我使用的手机为例,命令会输出如下信息:
0035 : value 0, min 0, ma
在
Android
系统中,可以通过使用LocationManager类和LocationListener接口来获取设备的GPS
坐标值
。
首先,需要在Manifest文件中声明访问设备位置的权限:
<uses-permission
android
:name="
android
.permission.ACCESS_FINE_LOCATION" />
然后,在代码中获取LocationManager实例,并通过该实例注册LocationListener:
LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
LocationListener locationListener = new LocationListener() {
@Override
public void onLocationChanged(Location location) {
double latitude = location.getLatitude();
double longitude = location.getLongitude();
// Do something with the location data
//... other required methods for LocationListener
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, locationListener);
当GPS
坐标
发生变化时,LocationListener的onLocationChanged方法就会被调用,在该方法中即可获取最新的经纬度
坐标值
。