tap-client
The Kotlin client for Tap: connect to the tap server, attach devices and drive them.
Start with TapClient to connect, then work with a Device. device.app(packageName) gives an App: control its lifecycle and find its elements with selectors such as res(...) and text(...) (app.element(...), app.await(...)); device.screen (Screen) finds elements of any app or the system UI. Act on them through Element. All device calls are suspend. In JUnit 5 tests, use tap-junit5 instead of connecting by hand.