How can I reliably simulate touch events on Android (without rooting) from Java outside my app which runs as a background service? While this question has been asked before, most answers utilise ADB. (such as How to simulate touch events on Android device?) https://github.com/chetbox/android-mouse-cursor offers a good solution using Accessibility, but is not very reliable as not all views respond