前言:input keyeven操作发送手机上常用的一些按键操作

一、keyevent事件对应数字

电话键

  • KEYCODE_CALL: 拨号键
  • KEYCODE_ENDCALL: 挂机键
  • KEYCODE_HOME: 按键Home
  • KEYCODE_MENU: 菜单键
  • KEYCODE_BACK: 返回键
  • KEYCODE_SEARCH: 搜索键
  • KEYCODE_CAMERA: 拍照键
  • KEYCODE_FOCUS: 拍照对焦键
  • KEYCODE_POWER: 电源键
  • KEYCODE_NOTIFICATION: 通知键
  • KEYCODE_MUTE: 话筒静音键
  • KEYCODE_VOLUME_MUTE: 扬声器静音键
  • KEYCODE_VOLUME_UP: 音量增加键
  • KEYCODE_VOLUME_DOWN: 音量减小键

控制键

  • KEYCODE_ENTER: 回车键
  • KEYCODE_ESCAPE: ESC键
  • KEYCODE_DPAD_CENTER: 导航键 确定键
  • KEYCODE_DPAD_UP: 导航键 向上
  • KEYCODE_DPAD_DOWN: 导航键 向下
  • KEYCODE_DPAD_LEFT: 导航键 向左
  • KEYCODE_DPAD_RIGHT: 导航键 向右
  • KEYCODE_MOVE_HOME: 光标移动到开始键
  • KEYCODE_MOVE_END: 光标移动到末尾键
  • KEYCODE_PAGE_UP: 向上翻页键
  • KEYCODE_PAGE_DOWN: 向下翻页键
  • KEYCODE_DEL: 退格键
  • KEYCODE_FORWARD_DEL: 删除键
  • KEYCODE_INSERT: 插入键
  • KEYCODE_TAB: Tab键
  • KEYCODE_NUM_LOCK: 小键盘锁
  • KEYCODE_CAPS_LOCK: 大写锁定键
  • KEYCODE_BREAK: Break/Pause键
  • KEYCODE_SCROLL_LOCK: 滚动锁定键
  • KEYCODE_ZOOM_IN: 放大键
  • KEYCODE_ZOOM_OUT: 缩小键

每个数字与keycode对应表如下:

  • 0 --> "KEYCODE_UNKNOWN"
  • 1 --> "KEYCODE_MENU"
  • 2 --> "KEYCODE_SOFT_RIGHT"
  • 3 --> "KEYCODE_HOME"
  • 4 --> "KEYCODE_BACK"
  • 5 --> "KEYCODE_CALL"
  • 6 --> "KEYCODE_ENDCALL"
  • 7 --> "KEYCODE_0"
  • 8 --> "KEYCODE_1"
  • 9 --> "KEYCODE_2"
  • 10 --> "KEYCODE_3"
  • 11 --> "KEYCODE_4"
  • 12 --> "KEYCODE_5"
  • 13 --> "KEYCODE_6"
  • 14 --> "KEYCODE_7"
  • 15 --> "KEYCODE_8"
  • 16 --> "KEYCODE_9"
  • 17 --> "KEYCODE_STAR"
  • 18 --> "KEYCODE_POUND"
  • 19 --> "KEYCODE_DPAD_UP"
  • 20 --> "KEYCODE_DPAD_DOWN"
  • 21 --> "KEYCODE_DPAD_LEFT"
  • 22 --> "KEYCODE_DPAD_RIGHT"
  • 23 --> "KEYCODE_DPAD_CENTER"
  • 24 --> "KEYCODE_VOLUME_UP"
  • 25 --> "KEYCODE_VOLUME_DOWN"
  • 26 --> "KEYCODE_POWER"
  • 27 --> "KEYCODE_CAMERA"
  • 28 --> "KEYCODE_CLEAR"
  • 29 --> "KEYCODE_A"
  • 30 --> "KEYCODE_B"
  • 31 --> "KEYCODE_C"
  • 32 --> "KEYCODE_D"
  • 33 --> "KEYCODE_E"
  • 34 --> "KEYCODE_F"
  • 35 --> "KEYCODE_G"
  • 36 --> "KEYCODE_H"
  • 37 --> "KEYCODE_I"
  • 38 --> "KEYCODE_J"
  • 39 --> "KEYCODE_K"
  • 40 --> "KEYCODE_L"
  • 41 --> "KEYCODE_M"
  • 42 --> "KEYCODE_N"
  • 43 --> "KEYCODE_O"
  • 44 --> "KEYCODE_P"
  • 45 --> "KEYCODE_Q"
  • 46 --> "KEYCODE_R"
  • 47 --> "KEYCODE_S"
  • 48 --> "KEYCODE_T"
  • 49 --> "KEYCODE_U"
  • 50 --> "KEYCODE_V"
  • 51 --> "KEYCODE_W"
  • 52 --> "KEYCODE_X"
  • 53 --> "KEYCODE_Y"
  • 54 --> "KEYCODE_Z"
  • 55 --> "KEYCODE_COMMA"
  • 56 --> "KEYCODE_PERIOD"
  • 57 --> "KEYCODE_ALT_LEFT"
  • 58 --> "KEYCODE_ALT_RIGHT"
  • 59 --> "KEYCODE_SHIFT_LEFT"
  • 60 --> "KEYCODE_SHIFT_RIGHT"
  • 61 --> "KEYCODE_TAB"
  • 62 --> "KEYCODE_SPACE"
  • 63 --> "KEYCODE_SYM"
  • 64 --> "KEYCODE_EXPLORER"
  • 65 --> "KEYCODE_ENVELOPE"
  • 66 --> "KEYCODE_ENTER"
  • 67 --> "KEYCODE_DEL"
  • 68 --> "KEYCODE_GRAVE"
  • 69 --> "KEYCODE_MINUS"
  • 70 --> "KEYCODE_EQUALS"
  • 71 --> "KEYCODE_LEFT_BRACKET"
  • 72 --> "KEYCODE_RIGHT_BRACKET"
  • 73 --> "KEYCODE_BACKSLASH"
  • 74 --> "KEYCODE_SEMICOLON"
  • 75 --> "KEYCODE_APOSTROPHE"
  • 76 --> "KEYCODE_SLASH"
  • 77 --> "KEYCODE_AT"
  • 78 --> "KEYCODE_NUM"
  • 79 --> "KEYCODE_HEADSETHOOK"
  • 80 --> "KEYCODE_FOCUS"
  • 81 --> "KEYCODE_PLUS"
  • 82 --> "KEYCODE_MENU"
  • 83 --> "KEYCODE_NOTIFICATION"
  • 84 --> "KEYCODE_SEARCH"
  • 85 --> "TAG_LAST_KEYCODE"

2、实现back键。打开cmd输入指令

# 方法一:
> adb shell input keyevent KEYCODE_BACK# 方法二:
> adb shell input keyevent 4

3、下面封装keyevent事件放入common模块供调用

#coding:utf-8
import osclass Event():'''常用keyevent事件'''KEYCODE_HOME = 3         # home键KEYCODE_MENU = 82        # menu键KEYCODE_BACK = 4         # back键KEYCODE_POWER = 26       # power键KEYCODE_DPAD_UP = 19     # 向上KEYCODE_DPAD_DOWN = 20   # 向下KEYCODE_DPAD_LEFT = 21   # 向左KEYCODE_DPAD_RIGHT = 22  # 向右KEYCODE_NOTIFICATION = 83 # 解锁# 点击返回键
def back(keyname=Event.KEYCODE_BACK):' 执行adb keyevent事件 参数从Event类里面关联'adb = 'adb shell input keyevent %s' % keynameos.system(adb)# 点击home键
def home(keyname = Event.KEYCODE_HOME):adb = 'adb shell input keyevent %s' % keynameos.system(adb)# 点击菜单键
def menu(keyname= Event.KEYCODE_MENU):adb = 'adb shell input keyevent %s' % keynameos.system(adb)# 按一下电源键
def power(keyname=Event.KEYCODE_POWER):adb = 'adb shell input keyevent %s' % keynameos.system(adb)# 向上滑动
def up(keyname = Event.KEYCODE_DPAD_UP):adb = 'adb shell input keyevent %s' % keynameos.system(adb)# 向下滑动
def down(keyname = Event.KEYCODE_DPAD_DOWN):adb = 'adb shell input keyevent %s' % keynameos.system(adb)# 向左滑动
def left(keyname= Event.KEYCODE_DPAD_LEFT):adb = 'adb shell input keyevent %s' % keynameos.system(adb)# 向右滑动
def right(keyname= Event.KEYCODE_DPAD_RIGHT):adb = 'adb shell input keyevent %s' % keynameos.system(adb)# adb也可以输入文本
def input_text(text):u'adb输入是text文本,不支持中文'adb = 'adb shell input text %s' % textos.system(adb)if __name__=='__main__':back()back()

转载于:https://www.cnblogs.com/guo2733/p/10584891.html

adb shell按键操作(input keyevent)相关推荐

  1. android adb shell 命令操作

    一:camera 1.查看是否存在camera外设,设备节点 ls /dev/video* 2.adb 查看camera详细信息 adb shell dumpsys media.camera 3.ad ...

  2. emmc linux.格式化参数,大家都是怎么格式化emmc芯片的?能在ADB SHELL 中操作吗?uboot 就实现了GPT分区和烧录功能...

    大家都是怎能格式化emmc芯片的,我用DM3730芯片.用的是2.3.4代码 ,kernel是2.6.37  .系统外部sd启动是可以的,我加入了emmc芯片,我在uboot下分区,在uboot下把E ...

  3. appium+python自动化-adb shell模拟点击事件(input tap)

    前言 appium有时候定位一个元素很难定位到,或者说明明定位到这个元素了,却无法点击,这个时候该怎么办呢? 求助大神是没用的,点击不了就是点击不了,appium不是万能的,这个时候应该转换思路,换其 ...

  4. linux脚本红包,利用adb shell和node.js实现抖音自动抢红包功能(推荐)

    逻辑很简单,在抖音视频播完之后如果是红包视频,会跳出红包. 我们模拟逻辑如下: 点击屏幕中央,如果有红包打开红包,没有红包则暂停视频. 点击返回按钮,如果有红包关闭红包界面,没有红包提示再按一次退出( ...

  5. android js shell,利用adb shell和node.js实现抖音自动抢红包功能(推荐)

    逻辑很简单,在抖音视频播完之后如果是红包视频,会跳出红包. 我们模拟逻辑如下: 点击屏幕中央,如果有红包打开红包,没有红包则暂停视频. 点击返回按钮,如果有红包关闭红包界面,没有红包提示再按一次退出( ...

  6. 绝对稳定雷电ld.exe 替换 adb shell 教程

    通常,我们通过adb操作模拟器,如安装软件.运行shell命令等,但是用windows系统,adb就经常掉线,端口被占用,或者发现不到设备,对于调试或者自动化非常痛苦.就在雷电安装目录下,他们有一个内 ...

  7. android js shell,使用adb shell+node.js实现抖音自动抢红包

    这次给大家带来使用adb shell+node.js实现抖音自动抢红包,使用adb shell+node.js实现抖音自动抢红包的注意事项有哪些,下面就是实战案例,一起来看一下. 逻辑很简单,在抖音视 ...

  8. 利用adb shell和node.js实现抖音自动抢红包功能

    昨天回家发现家里人都在用抖音抢红包,看了下操作逻辑,发现规律后觉得可以用软件控制点红包,于是做了以下尝试. 运行环境 node.js adb 搭建过程网上很多,就不赘述啦~ 抢红包逻辑 逻辑很简单,在 ...

  9. android adb shell 常用命令

    adbshell.com/ adb常用命令 1.模拟点击 adb shell input tap 100 100 复制代码 2.滑动 adb shell input swipe x1 y1 x2 y2 ...

  10. EasyClick adb shell命令大全

    EasyClick adb.shell命令大全目录 EasyClick adb.shell命令大全 ADB包安装步骤 使用教程 ADB高级命令 Android 常用的Linux命令 Android a ...

最新文章

  1. 录播教室预约系统(八)-客户端部门管理员增加教室
  2. Linux系统安装python3和创建python3虚拟环境
  3. 怎样实现linux的网络通信协议是,一种基于Linux系统的TCP/IP协议栈的实现
  4. SVN 安装与使用教程总结
  5. mavros常用消息类型表
  6. 【黑马程序员数据库】数据库基础大总结
  7. 每个极客都应该知道的Linux技巧
  8. jd页面与tianmao页面模仿jsonp跨域
  9. 网站流量日志数据分析系统
  10. rtx服务器插件的作用,腾讯通RTX手机版插件介绍 - 有度帮助中心
  11. Android Studio:activity界面跳转时闪退或报错:xxx keeps stopping
  12. 怎样查出SQLServer的性能瓶颈
  13. 药品市场分析怎么写?(总结归纳了20份药品报告的经验分享)
  14. 黑客或可完全控制设备,苹果紧急发布补丁!
  15. 客户管理是企业利润的根本,企业如何进行客户管理呢?
  16. android智能电灯,爱克 E-Light(智能灯泡)apk
  17. java emoji问号_java过滤emoji字符
  18. 在大理,有没有见到段誉?
  19. 如何收藏豆瓣FM中的红心歌曲
  20. P1967 货车运输 题解

热门文章

  1. 【转载】 扫描二维码自动识别手机APP下载地址
  2. 分享一个安全实现JSONP跨域的插件
  3. 国内985副教授与行政人员一年能够拿到多少工资?
  4. 篇章级关系抽取(Doc-RE)论文列表整理
  5. NeurIPS、COLING顶会亮点有哪些 | 一周学术精选
  6. 是时候研读一波导师的论文--一个简单有效的联合模型
  7. 一文搞懂常见概率分布的直觉与联系
  8. 论文赏析[ACL17]一个最小化的基于跨度的神经句法分析器
  9. 深度学习界明星:生成对抗网络与Improving GAN
  10. Windows一般都用系统进程来加载内核模块