Cloverplay lets you play Stadia and xCloud games with on-screen controls on your rooted phone.
Once you install Cloverplay, open the app and grant it root access. Then enable the accessibility service:
Then, just open Stadia and xCloud, open a game, and start playing. The joysticks will appear whenever you press your finger down (left half of the screen will display the left joystick, right half will display the right joystick).
If you want to hide the controls while playing, e.g. to interact with the app (see gotchas below), press and hold the down arrow at the bottom. To reshow them, press and hold the same button again.
Cloverplay works by displaying an overlay on the screen via an accessibility service, and it detects when the screen rotates while you're in the Stadia and xCloud apps. This comes with some things to note:
You can access these by tapping the three dots on the top right of the Cloverplay app -> Preferences. They're saved instantly; just go back to exit and return to the Cloverplay app.
Sets a margin in DP units for the left / right side of the controls. This is particularly useful if your device has non-symmetrical bezels (e.g. the Pixel 4), as you can pad out one side to make it even to the other.
Sets the radius in DP units of the joystick. This is useful if you find the current size to be too small.
Sets the space between the A, B, X, and Y buttons.
Sets the size of the A, B, X, Y, L3, and R3 buttons.
Sets the extra padding to the left of L1/L2 and to the right of R1/R2.
They have different sets of advantages and disadvantages:
TouchStadia advantages compared to Cloverplay:
Cloverplay advantages compared to TouchStadia: