Hi Henrik,
Although you can use the functionality built in to the Android Emulator to mock locations using a GPX file (Run Apps on the Android Emulator | Android Studio ), I don't think this sends through compass heading (bearing / course) or velocity (speed) information. So the recentering behaviour would work, but the map/symbol rotation aspects would not work. Looking at the emulator geo fix command, I don't think there's a way to script this sort of information for the emulator.
If you can find a 3rd party mock location app in the Play Store that provides this information, then you could try to install the Google Play store on your emulator (you can find more info if you search on Stack Overflow for android emulator Play Store GAPPS), and install the location mock app. Alternatives would be to create a custom data source, as you suggest, and ensure that the locations are created to include the bearing and speed information you want. In some Runtime SDKs I think there is/was a built-in mock location provider, based on a standard platform technology. We don't have this for Android runtime SDK, 10.x or 100.0. It is something that has been suggested as an enhancement, but I don't know when/if that would be made available. Submitting this to ArcGIS Ideas would be a good way to note your interest in this feature.
Regards
Shelly