通过adb模拟快速的屏幕点击,小米手机亲测有效

2023-05-16

通过adb模拟快速的屏幕点击

tips:高版本的此方法行不通了,低于Android10的可以尝试一下,高版本的可以研究一下下面这个框架

Genymobile/scrcpy

最近在做远程控制,关于这个框架欢迎评论区讨论。

想必当你看到这篇文章之前,你可能已经尝试了很多,用下面所说的这种方法:
我们都知道通过下面的命令可以模拟屏幕单击:

adb shell input tap x y

但是发现在尝试了之后,手机的响应速度非常的慢,这显然不是我们想要的结果。
分析原因,这是因为adb是java环境的,发送到手机之后,系统在写入文件,然后响应事件,这一过程就显得很繁琐,你我们有没有什么办法去直接写入事件文件呢?


下面开始讲重点,记好笔记,要考

  1. 进入adb shell命令行
  2. 输入getevent -l进入event事件的监听,这个时候命令行会block住,然后你在屏幕点击你想要点击的位置,你会发现会打印如下的信息:
    /dev/input/event1: EV_ABS       ABS_MT_TRACKING_ID   00000274            
    /dev/input/event1: EV_KEY       BTN_TOUCH            DOWN                
    /dev/input/event1: EV_KEY       BTN_TOOL_FINGER      DOWN                
    /dev/input/event1: EV_ABS       ABS_MT_POSITION_X    0000025a            
    /dev/input/event1: EV_ABS       ABS_MT_POSITION_Y    000005c3            
    /dev/input/event1: EV_SYN       SYN_REPORT           00000000            
    /dev/input/event1: EV_ABS       ABS_MT_TRACKING_ID   ffffffff            
    /dev/input/event1: EV_KEY       BTN_TOUCH            UP                  
    /dev/input/event1: EV_KEY       BTN_TOOL_FINGER      UP                  
    /dev/input/event1: EV_SYN       SYN_REPORT           00000000   
    
    ABS_MT_POSITION_X ABS_MT_POSITION_Y就是你点击的位置,都是16进制的。但是我们的重点不在这里,我们的重点是前面的路径,也就是/dev/input/event1 ,这是系统的事件节点,同样我们可以的input目录下面发现很多这样的节点:
    130|vince:/ # ls /dev/input/                                                   
    event0 event2 event4 event6 eventX mouse0 
    event1 event3 event5 event7 mice   mouse1 
    
  3. 接下来我们把尝试把点击的事件文件记录下来,一开始我尝试下面的方法:
    dd if=/dev/input/event1 of=/sdcard/event1
    
    想通过这个方法来保存事件的信息,但是系统直接提示:意思就是没有数据写出,获得的文件是空白的,这很明显不行
    1|vince:/ # dd if=/dev/input/event1 of=/sdcard/event1                          	
    ^C0+2 records in
    0+0 records out
    0 bytes transferred in 2.376 secs (0 bytes/sec)
    
  4. 然后我发现通过cat去打印event1,屏幕上面显示了一堆乱码,然后我机智的把这段乱码保存了起来:
    cat /dev/input/event1 > /sdcard/event1
    
    然后得到了一样的一行乱码
    130|vince:/ # cat /sdcard/event1                                               
    ?L?\g?9v?L?\g?J?L?\g?E?L?\g?5??L?\g?63?L?\g?1?L?\g??L?\N9?????L?\NJ?L?\NE?L?\Nvi
    
  5. 紧接着,把这个文件直接写入的event1
    dd if=/sdcard/event1 of=/dev/input/event1
    
    终于有反应了,大功告成,最后写一个循环的脚本,就可以不断的点击了,nice~~
    while : ; do dd if=/sdcard/event1 of=/dev/input/event1 ; done
    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过adb模拟快速的屏幕点击,小米手机亲测有效 的相关文章

  • Ubuntu+虚拟机 切换图形界面和命令行界面(亲测可行!!解决Ubuntu中快捷键失效问题!!)

    前几天做操作系统实验需要切换虚拟机的图形界面和命令行界面 在csdn上面找了各种方法 xff0c 比如快捷键Ctrl 43 Alt 43 F1 xff0c Ctrl 43 Alt 43 shift 43 F1等等 xff0c 虚拟机通通没有
  • 安装Kali Linux之后要做的前10件事

    Kali Linux是基于Debian的发行版 xff0c 由全球领先的信息安全培训公司之一 Offensive Security专门开发和维护 xff0c 用于高级渗透测试和安全性 它通常被称为黑客的理想操作系统 xff0c 它是对Bac
  • kafka 多消费者实现

    kafka官网 xff1a http kafka apache org quickstart 目录 kafka简单介绍 xff1a 实现方式 1 xff1a kafka分区 2 实现结果 3 xff1a kafka的consumer代码 4
  • ipa重签名的四种方式

    文章为学习hank的视频笔记 一 开发者调试安装app到手机的签名过程 1 Mac电脑生成公钥M和私钥M 2 公钥M传给苹果服务器 xff0c 苹果服务器的私钥A对公钥M进行加密生成证书返回给xcode 3 Xcode下载profile等描
  • IOS——使用ScrollView和PageController实现引导页分页效果

    如标题所说 xff0c 使用的是ScrollView和PageControlle两个控件共同达到该效果 首先 xff0c 使用storyboard将ScrollView和PageControlle拖入 xff0c 要注意的是 xff0c P
  • 寻找第一个出现次数最少的字符

    同理寻找第一个出现次数最少的字符 xff0c 一次循环的还没想好 span class hljs keyword import span java util HashMap span class hljs keyword import sp
  • 富文本

    ios项目中经常需要显示一些带有特殊样式的文本 xff0c 比如说带有下划线 删除线 斜体 空心字体 背景色 阴影以及图文混排 xff08 一种文字中夹杂图片的显示效果 xff09 通常想要实现这些效果要使用到iOS的Foundation框
  • 【设计模式】linux中利用信号量演示生产者与消费者模型

    1 简介 linux sem 信号量是一种特殊的变量 xff0c 访问具有原子性 xff0c 用于解决进程或线程间共享资源引发的同步问题 用户态进程对 sem 信号量可以有以下两种操作 xff1a 等待信号量 xff1a 当信号量值为 0
  • ftp与sftp上传工具类

    1 ftp上传工具类 package com zhjg utils import java io IOException import java io InputStream import java io OutputStream impo
  • 日本推出可实时监测地震烈度iPhone应用软件

    这个 xff0c 实在 xff01 据日本媒体报道 xff0c 日本近日在iPhone及iPad的平台上推出一款名为 i震度 的防灾害应用软件 该应用软件由专业研发地震检测仪器的白山工业公司开发完成 xff0c 具有随时随地监测地震烈度的功
  • Android 文件管理器 文件缩略图标显示流程

    前言 本篇文章是基于Android 11 文件管理器 xff08 com android documentsui xff09 的源码 xff0c 在实际项目中定位加载图片和视频文件显示缩略图的相关问题时 xff0c 做的总结 xff0c 文
  • Android 显示 指纹/人脸 身份验证对话框

    1 前言 为了增加用户的隐私和安全 xff0c 需保护您的应用中的敏感信息或付费内容 xff0c 一种方法是请求生物识别身份验证 xff0c 例如使用人脸识别或指纹识别 本篇文章介绍了如何在您的应用中支持生物识别登录流程 2 声明应用支持的
  • 截取图片部分

  • Android PackageManagerService总结(五) APK卸载流程

    一 概述 PackageManagerService 简称PKMS xff0c 是Android系统中核心服务之一 xff0c 管理着所有与package相关的工作 xff0c 常见的比如安装 卸载应用 信息查询等工作 主要完成以下核心功能
  • ButterKnife内存泄漏问题

    在butterKnife自动生成的代码 xff08 XXX ViewBinding xff09 中 xff0c 里面有这样一段代码 xff1a view setOnClickListener new DebouncingOnClickLis
  • PPTV面试算法思考-最长对称子字符串

    题目 最近在微信公众号里看看到了一个PPTV的面试算法题 xff0c 感觉难度适中 xff0c 想试下 题目的内容为求一个字符串的最长对称子字符串 如 xff1a 输入 输出 abba 4 abad 3 acccbaa 3 我的算法1 自己
  • C++

    由于见到论坛上不少找书的 xff0c 于是就稍稍汇总总结了一下 xff0c 作为本人即将推出的 C 43 43 资源大汇 系列文章的引子 本文只是初稿 xff0c 其中有不少的纰漏 笔误 打误 xff08 打字错误 xff09 希望各位纠正
  • pyspark MLlib基本使用

    MLib 基本概念 MLib其实就是将数据以RDD的形式进行表示 xff0c 在分布式数据集上调用各种算法 使用方法 MLlib中包含能够在集群上运行良好的并行算法 xff0c 如kmeans 分布式RF 交替最小二乘等 xff0c 这能够
  • 一个启动模式为singleTop的activity,如果再次启动会发生什么? 面试官想问的是 onNewIntent()

    Activity有一个 onNewIntent Intent intent 回调方法 xff0c 该方法我们几乎很少使用 xff0c 导致已经将其忽略掉 该方法的官方解释如下 xff1a This is called for activit
  • c++ 中的重载全局new,delete

    最近做一个小项目 xff0c 对c 43 43 又有很多新的理解 实在不的不让人发出感叹 xff0c c 43 43 太强大了 xff0c 绝对不是一朝一夕就可以领悟她的内涵的 首先我们要清楚 xff0c 为什么我们要重载new xff0c

随机推荐

  • 解决AndroidStudio报错问题:Missing essential plugin

    前言 xff1a 今天下载了Android4 2 0Canary14最新版 xff0c 打开时突然报了一个错 xff0c 1 错误现象 xff1a AndroidStudio 无法正常打开 xff0c 打开之后弹出报错窗口显示 xff1a
  • java使用ftp上传文件出现false()

    http blog csdn net beyondlpf article details 9343781这是我解决的的原文地址解析原因 在项目中使用commons net jar实现FTP文件的下载 xff0c 在windows xp上运行
  • keil5在原有工程上修改工程名

    1 在工程文件目录中 xff0c 将1 uvoptx和1 uvprojx名字改成2 uvoptx和second uvprojx 2 其他1 uvoptx文件统统删除 3 打开second uvproj 4 点击 xff0c 在弹出的界面上
  • Systemd 入门教程:命令篇

    原文 xff1a http www ruanyifeng com blog 2016 03 systemd tutorial commands html 一 由来 历史上 xff0c Linux 的启动一直采用init进程 下面的命令用来启
  • 数据分位值计算shell脚本

    数据 sort n perl e 39 64 tp 61 500 75 9 97 99 995 999 64 l 61 lt gt for i 61 0 i lt 64 tp i 43 43 d 61 64 tp i printf 34 T
  • ssh服务器拒绝了密码 请再试一次

    可能原因是 xff1a 第一种情况 xff1a 可能是服务器的密钥改变了 xff0c 然后服务器内部的认证authorized keys变化了 xff0c 可以删除里边你的公钥 xff0c 再重新认证登录下试试 第二种情况 xff1a 21
  • win7频繁提示资源管理器已停止工作解决办法

    今天上班打开电脑 xff0c 总是弹出windows资源管理器已停止工作 xff0c 点击下方的 重新启动 xff0c 又恢复正常 xff0c 但是不一会出现这个问题 xff0c 如此反复 xff0c 差不多一分钟左右出现一次 xff0c
  • Eclipse中在项目右键菜单点击->Maven->Update Projects时,JDK总是切回 1.5

    Maven问题总结 xff1a Eclipse中项目右键菜单中点击Maven gt Update Projects时JDK被重置 Eclipse中在项目右键菜单点击 gt Maven gt Update Projects时 xff0c JD
  • tomcat 日志log4j,slf4j,logback冲突

    问题描述 xff1a 启动tomcat xff0c 发现tomcat无法启动 xff0c catalina out有如下错误日志 xff1a INFO localhost startStop 1 org apache catalina co
  • 详解软件项目管理流程的每一步

    一 项目启动 xff08 项目开工会 xff09 了解项目干系人及其利害关系 所有项目组成员是否到位 xff0c 如到位则拿到项目开发人员的简历 xff0c 详细了解每个开发人员的情况 xff08 可能会组织到客户方面试 xff09 根据项
  • 如何在 CentOS / RHEL 上设置 SSH 免密码登录

    前提配置 xff1a 使用root登录修改配置文件 xff1a etc ssh sshd config xff0c 将其中三行的注释去掉 xff0c 如下 xff1a 然后重启ssh服务 xff1a service sshd restart
  • 进阶问题

    1 用户态和内核态是什么 xff1f 区别在哪 xff1f 2 nginx为什么如此高效 xff1f 为什么http服务不采用nginx同样的策略 xff1f 3 一次完整的http请求的完整过程是什么 xff1f 七层协议每层做了什么 x
  • 跨跳板机登陆服务器shell脚本

    expect shell 自动越过跳板机登陆服务器 span class token comment usr bin expect f span span class token keyword set span password span
  • NSParagraphStyle详解

    NSParagraphStyleAttributeName 段落的风格 xff08 设置首行 xff0c 行间距 xff0c 对齐方式等 xff09 NSMutableParagraphStyle paragraphStyle 61 NSM
  • 程序员5种编程入门方法,如何快速学会一门编程语言?

    程序员要掌握一门语言 xff0c 还是一定要掌握多门语言 xff1f 对于这个问题 xff0c 公说公有理 xff0c 婆说婆有理 然而现实技术更新太快 xff0c 掌握一门编程语言都不容易 同时精通多门语言又谈何容易呢 xff1f 但是
  • android4.0默认界面旋转180

    http my eoe cn 876641 archive 22638 html android4 0默认启动画面和正常显示旋转了180度 xff0c 即为倒立的 原来是屏输出为倒的 xff0c 查找得知可以做旋转 xff1a 步骤 xff
  • git reset&git revert 使用

    前言 不管在工作还是个人开发的使用中 xff0c 或多或少的我们都会接触到git的使用 但是 xff0c 人非圣贤 xff0c 总有犯错误的时候 xff0c 写错代码 xff0c 提交错误的代码也是在所难免的事情 但是 xff0c 不用着急
  • 一个自定义卫星菜单控件及其使用,仿arcmenu

    PopMenuView 一个简单的卫星菜单控件 效果图 外链图片转存失败 源站可能有防盗链机制 建议将图片保存下来直接上传 img fdPLH0ZE 1618383291876 http resonlei top photo gif pop
  • Android使用WebView实现图片点击的监听

    Android使用WebView实现图片点击的监听 话不多说 xff0c 直接进入主题 第一步 首先我们需要写一个监听事件的java类 xff0c 如下 xff1a span class token comment 图片的点击事件调用的方法
  • 通过adb模拟快速的屏幕点击,小米手机亲测有效

    通过adb模拟快速的屏幕点击 tips xff1a 高版本的此方法行不通了 xff0c 低于Android10的可以尝试一下 xff0c 高版本的可以研究一下下面这个框架 Genymobile scrcpy 最近在做远程控制 xff0c 关