adb inputswipe shell_[Android]通过adb shell input上报命令模拟屏幕点击事件【转】
常用的 input上报命令:
input text 1234 实际向界面注入1234文字,有输入框,能明显看到效果
input keyevent 4 键盘事件,4 为返回
input tap 100 300 单击触屏事件 ,模拟点击x=100 y = 300 位置
input swipe 100 300 500 300 触屏滑动事件,模拟滑动,从x =100
y = 300 滑动到x=500 y=300位置
input press 模拟按下轨迹球
input roll 100 300 模拟轨迹球滑动 x 方向100 y方向300
获取坐标方法:
第一步:计算比例
adb shell getevent -p | grep -e “0035” -e “0036”
获得event 体系里 宽(0035)和高(0036)
以当前我使用的手机为例,命令会输出如下信息:
0035 : value 0, min 0, max 1602, fuzz 0, flat 0, resolution 0
0036 : value 0, min 0, max 2503, fuzz 0, flat 0, resolution 0
0035(宽) max 1602
0036(高) max 2503
计算比例(用已知的屏幕分辨率,如1080p即:1080(宽) * 1920(高)):
rateW = 1080(手机屏幕的宽) / 1602(event里0035的max) = 0.674
rateH = 1920(手机屏幕的高) / 2503(event里0036的max) = 0.767
第二步:点击屏幕计算点击位置的坐标
adb shell getevent | grep -e “0035” -e “0036”
点击屏幕上需要的位置,会有如下输出:
/dev/input/event0: 0003 0035 00000341
/dev/input/event0: 0003 0036 000008ec
把0035和0036后面的位置数据从16进制转化为10进制
width = 0x341 = 3*16*16 + 4*16 + 1 = 833
height = 0x8ec = 8*16*16 + 14*16 + 12 = 2284
这是在event体系里的位置,将其转化为屏幕位置
screenW = width*rateW = 833*0.674 = 561
screenH = height*rateH = 2284*0.767 = 1751
终于算出来了
刚刚点击的屏幕位置坐标就是(561, 1751)
adb inputswipe shell_[Android]通过adb shell input上报命令模拟屏幕点击事件【转】相关推荐
- [Android]通过adb shell input上报命令模拟屏幕点击事件
常用的 input上报命令: input text 1234 实际向界面注入1234文字,有输入框,能明显看到效果 input keyevent 4 键盘事件,4 为返回 input tap 100 ...
- 【Android】技术调研:用代码模拟屏幕点击、触摸事件
在Android中,有些场景需要使用代码来模拟人的操作,比如微信自动抢红包.UI测试等都需要模拟实现点击事件(Click).触摸事件(Touch).键盘事件(KeyBoard)等.那么,有没有现成的方 ...
- android 模拟点击 不发出声音,【Android】代码实现模拟屏幕点击和键盘按键事件...
最近参加某比赛写了一个Android手机控制Android电视的程序,其中需要控制电视端模拟"鼠标"点击,和模拟按键盘的事件. 下面直接贴上程序: // 模拟屏幕点击事件 publ ...
- android ADB 模拟手机点击事件
手机连接到ADB 输入命令 adb shell getevent -p 显示 从这里可以知道每一个 /dev/input/event3: 0003 0035 00000161 event3是什么事件 ...
- Android模拟屏幕点击input tap替代解决方案
动机解释 本来直接使用 adb shell -> input 即可模拟 键盘事件,触屏事件keyevent ,text,tap 但是手上的这台目标Android机4.0.3系统的input只支 ...
- Android代码模拟物理、屏幕点击事件
一.应用中模拟物理和屏幕点击事件 例如,模拟对某个view的点击事件 private void simulateClick(View view, float x, float y) {long dow ...
- Android 模拟屏幕点击和物理按键方式
在Android 中,有些特定的功能或者在调试的时候需要模拟屏幕点击功能和物理按键等. 在实现上有2种方式: 首先是模拟屏幕点击的实现方式有两种: 模拟屏幕点击 本进程内实现,就是只有在自己的app上 ...
- Android代码模拟物理、屏幕点击事件 、APP内部自动点击
一.应用中模拟物理和屏幕点击事件 例如,模拟对某个view的点击事件 private void simulateClick(View view, float x, float y) {long dow ...
- 【Android】代码实现模拟屏幕点击和键盘按键事件
最近参加某比赛写了一个Android手机控制Android电视的程序,其中需要控制电视端模拟"鼠标"点击,和模拟按键盘的事件. 下面直接贴上程序: /*** 触发屏幕点击事件* @ ...
最新文章
- 获取 一个文件 在沙盒Library/Caches/ 目录下的路径
- RGBD 转换成点云 open3d
- Linux下mysql 5.x得到root密码后的另外一种利用方式
- mysql中字典值怎么添加_插入Python字典中的值,包括MySQL的键
- 阿里主管通知我试用期延期……
- 面试:InnoDB 索引
- android ssl http,Android SSL HTTP请求使用自签名证书和CA
- [转载]一个任务超时退出的装饰器,用起来真方便
- 一些Arduino 测试代码
- 智慧城市的宠儿 大数据为城市建设添彩
- php中多重继承,PHP如何使用接口实现多重继承?(代码示例)
- SRIO学习(三)——SRIO包
- 微信公众号支付报错:当前页面的url未注册
- form表单提交中文乱码的详细解析
- 小Q系列故事——世界上最遥远的距离
- 显示当前数据库服务器的ip,怎么查看服务器数据库的ip地址
- vue中将html页面转为图片并且下载该图片
- 论汽车车机快速启动与开机动画、倒车影像三者关系
- 依次输入5个数,求其中的最大值并输出
- python pr曲线_Py-Faster R-CNN可视化——网络模型,图像特征,Loss图,PR曲线