Apple consistently takes about 36 hours for us.
The next update won't be huge, (Google required us to make all screens 'edge to edge'[0], which took up most of my time last month). I'm hoping for some solid improvements now that's out the way, once the release pipeline has returned to normal.
Feel free to get in touch if you fancy contributing.
[0] https://developer.android.com/develop/ui/views/layout/edge-t...
The way I did it was to firstly get accessibility identifiers on everything. Then have it record everything I do on an emulator to navigate the entire app. Then left it for a while to work out how to actually use the app via the emulator. Once you have this sort of baseline. A lot of changes are really quite pleasant. I often ask for an HTML gallery of screenshots covering a few device sizes as the step before I bother running it on a device myself.
* We target minSdk 24
* We're still using XML views
* We target a large variety of form factors
* We have a lot of screens, and these have a lot of configuration options.
I really wish it was "point an agent at it, and walk away", but many screens ended up being hours of iteration with Fable driving my phone/an emulator to produce an acceptable outcome.
Given that my Pixel 9 Pro has system screens which are still broken under edge to edge, it's not an easy change, and takes up time which could have been going towards feature development.
E-waste is awful, as is cutting off old devices. We still backport security fixes to minSdk 21.
To Google's credit, post-21 is a much more pleasant experience and requires very little developer time. API desugaring[0] has worked perfectly, their compatibility classes[1] handle most of the common cases, and there's often very little to actually code[2].
[0] https://developer.android.com/studio/write/java8-support-tab...
[1] https://developer.android.com/jetpack/androidx/releases/appc...
[2] https://github.com/ankidroid/Anki-Android/blob/main/compat/s...
This is regarding 2.25.0alpha4.