the monkey not read completed the sync pipe.
- Incorrect exception handle.
When no space left on the device the write will
occurs an I/O exception, so we needed to catch it
and continue to read the data of the sync pipe to
aviod the bugreport hang forever.
https://code.google.com/p/android/issues/detail?id=211970
Change-Id: I80c6548434587bcc17b50f0c246a5887cdd339cf
Signed-off-by: songjinshi <songjinshi@xiaomi.com>
A few LOCAL_ADDITIONAL_DEPENDENCIES were required, where
LOCAL_REQUIRED_MODULES would be nicer, but you can't require a module of
the same name. It would create a dependency loop with the current
require implementation, so it's filtered by the build system.
Also translate monkey from ALL_PREBUILTS to a prebuilt like the rest of
the tools. This doesn't change anything, since 'monkey' is already in
build/target/product/base.mk.
ACP is being removed, so use the standard build system macros to copy
files.
Change-Id: I4f73c6b35c0d7ae25467145b0a9d5c32ba4578d2
Per convention, event categories that are not key events should
be inserted before the block of key event categories.
Change-Id: I2cbe4a34231462dbdee1f8b97270fdd0b3354690
1. added a new MonkeyEvent type for permission events
2. added monkey permission utility for randomized permission
events generation against targeted packages
3. refactored package whitelist/blacklist into MonkeyUtils class
Change-Id: I8f7998d74c3e28d02f5bcd47a0f9cc6167b93c93
The monkey now gets told about system hangs, and does stuff about
it! Most especially, it can collect a bug report. Monkey wins!
Change-Id: Ic8350721e715ef21d1ec813c6aff9a83262d5faa
Monkeys were using SecureRandom, but what it really wanted was an LCRNG
that allowed it to reproduce the same output with seeds. This change
allows the monkeys to shine.
Bug: 6950454
Change-Id: Iabf0fc5e7d50b786fa32b946e85de797220ff569
* commit '0c8fe324e579842cb04818a96016ef7b929e625a':
For the recent SD card access change. The non-zogyte process need to use the Environment#getLegacyExternalStorage to access the sdcard.
As the delay is added as WaitEvent, throttle time is applied after
the WaitEvent. This cause problem for Tap and Drag. The thorrle time
is then inserted between ACTION_DOWN and ACTION_UP, or ACTION_DOWN
and ACTION_MOVE. This broke the two actions.
Change-Id: I5a122d6cb3d99e38d9442c3de50e0360652c4baf
Last attempt to fix ACTION_MOVE ended up breaking stuff
elsewhere.
For a touch based gesture, it usually have a group of motion
events, and typically they have the same down time and individual
event times. Example: a tap should have ACTION_DOWN with same
down time and event time, and subsequent ACTION_UP should have
the same down time as previous one, but a fresh event time.
Similar situation applies to ACTION_DOWN, ACTION_MOVEs,
ACTION_UP sequence of a drag/scroll/fling gesture
In addition, a 5ms delay is added for a tap between DOWN and
UP. And a 5ms delay is added for each injected event in a drag
gesture
Change-Id: I8e65e578152b1c1ff1fa4c0f476ef45806826479
Currently for motion events, monkey forces current system uptime
onto both down time and event time. This breaks ACTION_MOVE
events because the down time of it is supposed to be the time
when finger is down.
the new logic is:
* check down time, if it's invalid (<0), fill in uptime
* always update event time with a fresh uptime
Bug: 6424997
Change-Id: I0b445815a5015d48c08bebc921c572164874449d
Monkey should not be injecting keys with metastate of -1.
Cleaned up the code to ensure it doesn't happen and to make it more
obvious what's going on.
Bug: 6397645
Change-Id: I7339b2fe14edb0578005f93af1f803a0ae3dec96