This will show you how to remote control Android devices with Android devices.
Set Up Android for Being Controlled
I recommend root for this. You can do it without root however.
Download VMLite VNC Server from the Google Play Store here. It costs , but it will be a one-time purchase given that all devices are signed into the account or are on an account linked to a Family Library with it purchased.
After you install and open it, you can simply start the server if you are rooted. It justs asks for SuperSU permissions:

Your IP then appears. Take note of this for connecting in the future. If you would like to change this IP to a static IP, you need to set up DHCP reservations on your router.
If you are not rooted, you need to download the Android App Controller from their website and follow the instructions. This requires a computer.
Go to the settings to configure the server.

Change the port from 5901 to 5900. This way, you don’t have to enter the port into the viewer.


Check keep screen on and auto correct rotation. I also usually keep the toolbar at the bottom checked.
Check start server on boot if you are rooted. Otherwise, it doesn’t actually start on boot and you have to follow the process from their controller each boot.

It will then ask you to restart the server.

Your Android is now ready for access with its IP address.
Demo
https://www.youtube.com/watch?v=eXfGS8UOOtw
Set Up Android for Controlling
Make sure your Android device is on the same network as the device you are controlling – more on connecting outside the network below.
Download RealVNC Viewer for Android here.
Once installed and opened, add the connection created above. Enter its IP address from above into the IP address section and a custom name of your choice (e.g. “Windows Computer #5).

Enter the IP of the device we set up to connect to and enter a name for it. I usually name mine according to my cash device naming system.

I like to set quality to low:

Click connect.
You can turn off the encryption warning so you don’t get that every time.

Enter the password (in my case, 1).

You are now connected to your device with an Android on the same network!

Controlling from Outside Your Network
In order to control this device from outside the network, I recommend setting up a VPN on your router. You can then use the same IP address you used above to connect to the machine as long as you are connected to your router via the VPN on the device controlling.
I will have an example soon on how I set up a VPN with my router, but how you can set up a VPN on your router depends on your model. Every UI is different. You will have to research your model for how to set up a VPN on it.