Android Monkey原理探讨
0x0 概述
本文不涉及如何使用monkey,官网说得够详细了,网上资料也一大堆。本文着重探讨monkey的实现原理,以及基于这些原理,我们可以做些什么?本文涉及的Monkey的源码位于AOSP的development项目的cmds目录下。
0x1 Monkey事件触发原理
Monkey的主要作用是,发送一些随机交互事件模拟人的随机操作。它是如何触发各种事件的呢?
1.1 触摸事件
触摸事件包括屏幕以及物理键的触摸,滑动,点击事件。我们可以通过发送一些adb命令模拟这些事件。不过Monkey实现时,直接调用hiden API实现。
InputManager.getInstance().injectInputEvent(keyEvent, int)
构造需要的事件,然后调用该接口就能触发了。
2. Activity事件
Activity事件是指我们调