欢迎来到 嗅灵易学

零基础也能上手的脚本技术课,一对一答疑带你入门

[原创]通过sendevent实现多点连续滑动

[原创]通过sendevent实现多点连续滑动

0x00 ...

最近在瞎琢磨Android设备的云控,想要实现一个多点滑动的功能。我们知道通过shell执行input swipe x1 y1 x2 y2 t可以实现t毫秒内从坐标(x1, y1)滑动到(x2, y2),滑动完成后模拟的动作就“被抬起”,很难直接通过input实现滑动”转弯“。于是花了半天时间看了一下sendevent的参数含义,简单实现了连续滑动的功能。

0x01 简述

sendevent需要4个参数,如下:
use: sendevent device type code value
含义分别是设备、事件类型、事件代码以及传递的数据。
在分析之前可以通过getevent获取事件的数据以便参照,如下为简单滑动后获取的数据:

/dev/input/event0: 0003 0039 00000c3a

/dev/input/event0: 0001 014a 00000001

/dev/input/event0: 0001 0145 00000001

/dev/input/event0: 0003 0035 00000124

/dev/input/event0: 0003 0036 00000393

/dev/input/event0: 0003 0031 00000005

/dev/input/event0: 0000 0000 00000000

/dev/input/event0: 0003 0031 00000006

/dev/input/event0: 0000 0000 00000000

/dev/input/event0: 0003 0030 00000007

/dev/input/event0: 0000 0000 00000000

/dev/input/event0: 0003 0030 00000006

/dev/input/event0: 0000 0000 00000000

/dev/input/event0: 0003 0036 00000391

/dev/input/event0: 0003 0030 00000007

/dev/input/event0: 0000 0000 00000000

/dev/input/event0: 0003 0036 0000038f

/dev/input/event0: 0003 0030 00000006

/dev/input/event0: 0000 0000 00000000

/dev/input/event0: 0003 0035 00000125

/dev/input/event0: 0003 0036 00000389

/dev/input/event0: 0000 0000 00000000

/dev/input/event0: 0003 0035 00000126

/dev/input/event0: 0003 0036 00000380

/dev/input/event0: 0000 0000 00000000

/dev/input/event0: 0003 0035 00000133

/dev/input/event0: 0003 0036 00000353

/dev/input/event0: 0000 0000 00000000

/dev/input/event0: 0003 0035 0000013a

/dev/input/event0: 0003 0036 00000341

/dev/input/event0: 0003 0031 00000005

/dev/input/event0: 0000 0000 00000000

....

/dev/input/event0: 0003 0035 0000031c

/dev/input/event0: 0003 0036 000002a3

/dev/input/event0: 0000 0000 00000000

/dev/input/event0: 0003 0039 ffffffff

/dev/input/event0: 0001 014a 00000000

/dev/input/event0: 0001 0145 00000000

/dev/input/event0: 0000 0000 00000000

type和code的含义可参照内核源码中的input.h,笔者用的Nexus6P,msm-android-msm-angler-3.10-nougat-mr2,该头文件位于include/uapi/linux/input.h。

注意:上传附件及图片大小不得大于30M。

⚠️ 版权声明:
本博客所有内容(含教程、源码、工具)仅供个人技术学习与研究交流使用,严禁商用、倒卖、二次分发及非法用途
未经作者书面授权,任何组织或个人不得转载、复制或用于其他平台,违者将追究相关责任。

0 0 0 举报
复制成功