So, we’ve released an update for the Android version of Brok. Complete with the new levels, some bug fixes, graphical and performance improvements, etc. We also removed the permissions that Corona bakes into your app. We had a (small) boost to purchases after releasing the update, and at the time of writing this we’re are in the top 200 again (after dropping off the chart). So updating does appear to help. And based on an incredibly small sample size, I’m guessing the permissions thing was the cause of about half of the cancelled orders we were getting before.
But…
There’s this Apple AppStore thing, and it’s causing me some issues. Convoluted story time. When we originally released Brok, we were using CoronaSDK build version 704. I didn’t know it at the time (probably wasn’t paying attention), but there was a newer build, version 840. In 704, both armv6 and armv7 architectures were supported. To people who don’t know or care what that means, basically all generations of iPhones could “run” my game (although older phones, like 3Gs couldn’t render fast enough to actually let you play it).
After releasing, I set out to fix the terrible performance on the older devices. I noticed that the 840 (newest Corona version) build included some features that would improve performance in a huge way. As I said, the game was unplayable on 3Gs, and even iPhone 4’s struggled on a few of the levels. Using 840 and including the new features, I produced a build of Brok that ran smooth as butter on Adam’s iPhone 4. I was excited. Then I got another friend to test on his iPhone 3G. My excitement turned to fear, then anger, then hate.
My friend couldn’t get the game to install. We were using TestFlightApp.com, which we had used before. We figured out that the app itself was failing to install, since it was only built for armv7 architectures. The iPhone 3G is armv6. So this new udpate that I’ve been building, the one that would make the game playable on this older model of phone, couldn’t be actually be played on it. Awesome.
Well, after I deliberated for a while, I decided that dropping support of the 3G phones (supposedly only ~6% of the iOS market) was the way to go, since that still gave the noticeable improvement to those with iPhone 4 or better. This will make some people upset (possibly) but it seemed like the right thing to do. Ah, doing the right thing. That’s just not the world I live in, however.
It turns out, Apple has a policy that I’m not allowed to submit an update to an app that would eliminate support for a particular hardware spec. If the app previously worked on armv6, I will always have to support it. I can up the minimum OS requirement, but I can’t drop hardware.
Sorry this is getting so long. But here’s the current plan: submit the update anyway, upping the minimum OS version required, and see if they notice. If they do, I’ll have to figure out other ways to improve performance. If not, however, then yay me!