Argh… there’s always that one that got away.
Using the PracticeDeck yesterday I noticed a bug with state restoration.
See, Apple is big about “state preservation and restoration“. While apps may appear to “run forever”, it’s an illusion because they can’t. So to help make the user experience proper, Apple recomends when your app backgrounds to preserve the app’s state so it can be restored when the app comes back to the foreground. Help the user keep up with where they left off.
Thing is, while today Apple provides a framework in the OS for supporting this, they didn’t always. The PracticeDeck was originally written before Apple’s support, so we homebrewed our solution. Alas, in the 1.2 update, something broke. It’s not something that everyone will get into, everything has to be just right, but it can happen and getting out of it is possible but non-trivial (tho by luck, most people will be able to get out of it just by virtue of how things unfold).
Nevertheless, we need to something about it.
A 1.2.1 update has been submitted to the App Store to address this. Alas, the way to address it was to (temporarily) disable state restoration. This isn’t what we want to do, but it’s more important to ensure you can keep using the app without too much weirdness. Thing is, so many apps do not support state restoration, so the app “starting over” when you come back to it isn’t necessarily a foreign concept; in fact, sometimes that you left and app and come back to it days later and it was “where you left off” sometimes feels weird to people. So for now, it’s a trade-off we will have to live with.
For 1.2 we did want to abandon our home-brewed support in favor of Apple’s, but didn’t have the time. This issue bumps up the priority, and we will resolve it by adopting Apple’s solution. Alas, it will just take time to do. Thank you for your patience.
If you have any feedback or questions about what we did, please contact us.