As @Robert mentioned, running only 1 adb shell and then executing input tap
in a loop will increase the rate.
However you can achieve better rates avoiding executing a new input
every time.
Using AndroidViewClient/culebra with CulebraTester2-public backend you will be able to obtain values like this.
#! /usr/bin/env python3
import timeit
from com.dtmilano.android.viewclient import ViewClient
helper = ViewClient.view_client_helper()
print(f"{timeit.timeit('helper.ui_device.click(500, 500)', number=1, globals=globals()):.4f}s")
giving (on a emulator):
⚠️ CulebraTester2 server should have been started and localport 9987 redirected to remote port 9987.
0.1796s
So you can run
helper.ui_device.click(x, y)
in a loop to tap very fast.
adb shell
and then write and execute a sh shell script on Android side that executesinput tap x y
in a loop.adb shell
and you are getting a shell on the device.