February 14, 2020

11:22

Of course, DummyDroid is pretty much unfixable for various reasons. It’s cheaper/faster to rewrite it from scratch. The main problem here is that in order to spoof an Android device, you need to supply 29 data points:

  • From 📁 /system/build.prop : manufacturer, brand, device, hardware, product, model, id, fingerprint, releaseversion, sdk version, bootloader, abi list.
  • Open GL version and list of supported extensions.
  • Supported locales
  • Obsolete stuff: support for hardware keyboard, 5 way nav input and touchscreen type.
  • Screen layout, size, density
  • Installed libraries
  • List of system available features (e.g. bluetooth, sensors, …)
  • List of installes shared libraries
  • Version information of certain important apps (com.android.vending).
  • Other nonsense: timestamps, OTA installed

Some items (e.g. fingerprint, timestamps, locales) can be calculated or set to sane defaults, but that still leaves around 20 things that must be collected by the user. The challenge is coming up with a userfriendly interface for that.