

App Store Bit Rot - kronawetter
http://www.undsoversum.de/2012/09/18/app-store-bit-rot/

======
rendezvouscp
I doubt this will ever be fixed by Apple because this issue affects so few
people. The overwhelming majority of iOS devices in active use can run at
least iOS 4.3[1], and I’d guess that the users that don’t upgrade to the
latest iOS version are the same ones that don’t update all their apps through
iTunes. I’m guessing that the number of users who update their apps through
iTunes but don’t update their device (or can’t update their device) to the
latest iOS is very small.

I wasn’t particularly thrilled that I was forced to drop support for iOS 3,
but looking at the number of active users of my app[2] that were running the
current version, I saw that _none_ of them were on iOS 3. This was probably
the right time for Apple to drop support for < iOS 4.3.

[1] I don’t have stats to back this up, but seeing that iPhone 3GS is the
lowest hardware to support iOS 4.3, and they’ve sold way more devices since
then than original iPhone and iPhone 3G, I think it’s fair to assume that the
vast majority of iOS devices in use can run iOS 4.3 or later.

[2] <https://ironmoney.com/ios/>

~~~
egb
While [1] may be true, many people never upgrade their iOS.

My stats are such that 8% of my users are using < iOS 4.3, and of that 8%
slice almost 3/4 (or 6% of my total users) _could_ update to something newer,
but they're happily running old iOSes.

If I were to cut them off, would that magically make them upgrade? I don't
think so. They'd just be bummed that their apps stopped working.

~~~
rendezvouscp
I don’t think that would magically make them upgrade either, although they
might be willing to do so since the only thing we can do is not upgrade our
apps to support them.

Obviously this will vary from app to app, but I’m surprised that you have such
a high number of users with an older version of iOS. Is that across all of
your apps/games?

~~~
objclxt
I can collaborate that data somewhat - across the US apps I have access to
stats for (a sizeable number of users) I see a similar figure (~6.5%) running
iOS 4.3 and lower.

However, only 0.7% of _devices_ are iPhone 3G and lower, so the majority of
users I see running <4.3 are not updating out of choice.

This is all anecdotal, though - figures will vary dramatically across
apps/demographics/etc.

------
sergeo
The idea that Xcode 4.5 is required for iPhone 5 development is incorrect. If
iOS3-4 & ARM6 support is needed, Xcode 4.4 could be used (at least for now) to
build iOS3-5 apps. The trigger to make an app use full iPhone5 screen is to
include Default-568h@2x.png into the project. Of course, you'll need to modify
screens to adjust layout depending on screen size.

Having said that, Apple typically pushes everyone to upgrade to the latest
Xcode, and OS/X, so I'd expect that Xcode 4.5 will be required rather sooner
than later. IMHO, this is a good thing in the long run, better than supporting
multiple generations of hardware and software - it's better for the ecosystem.
Even though about 8% of our users are on <iOS4.3, we would be fine when Apple
drops them - they would provide us more users on iOS6+.

~~~
xsmasher
> The trigger to make an app use full iPhone5 screen is to include
> Default-568h@2x.png into the project.

Have you tested that without using the new SDK, or is that a theory? The
Default-568h@2x.png might be required-but-not-sufficient.

~~~
sergeo
Yes, it's been confirmed to be sufficient.

As an additional evidence, one of our apps that included this file received
"required screenshot is missing" iTunes Connect status upon update upload
today, and it had all regular screenshots, but not iPhone5 ones.

~~~
buddydvd
Do you know how to run Xcode 4.4-compiled binary in Xcode 4.5's iPhone
simulator?

~~~
buddydvd
Okay, I was able to confirm sergeo's statement. Here's what I did:

1.) I compiled my app with a 4-inch default image using XCode 4.4.1 with iOS
5.1 as the base SDK and ran the app in Xcode 4.4.1's iOS simulator.

2.) I copied the resulting i386 app folder from /Library/Application
Support/iPhone Simulator/5.1/Applications/[app uuid] to /Library/Application
Support/iPhone Simulator/6.0/Applications/

3.) I started XCode 4.5's iOS Simulator and ran my app from Spring Board.

The result? It did work. I was able to see my Xcode 4.4.1-compiled app in
4-inch display mode.

I can't say for sure if this will work on the iPhone 5 hardware, but I'd bet
the answer is yes.

I guess with this finding, if you're not using any iOS 6.0 features, it may be
better to continue to compile your app using Xcode 4.4.1 since that lets you
more easily produce app with armv6 support.

------
jyap
This isn't Apple's style. Apple has planned obsolescence.

The other thing is that there has been over the air upgrades since iOS 5, so
people _do_ upgrade their iOS version.

From my multiple app stats (thousands of users), less than 2 percent run iOS <
4.3.

98% run iOS 5 or higher.

~~~
glenntzke
Also note that the iPhone4 is now offered for free with most upgrade plans. If
you have a 3G still kicking around on a regular plan, the upgrade path to (at
least) the 4 isn't painful.

~~~
tobyjsullivan
It's not free per-se. It requires a 2-year commitment (3 years here in
Canada). Agreeing to a 2-year commitment to get a 2-year-old phone is probably
a bad deal (especially given Apple's lack of support for the less-than-4-year-
old iPhone 3G). I don't expect a high percentage of people to go for that one.

~~~
mikeash
If they were planning to have a cell phone for the next two years _anyway_ ,
then it makes little difference. The commitment reduces their choices, but if
they weren't planning to change then it doesn't much matter.

~~~
jarek
If they were planning to stay with their current provider on their current
plan, perhaps.

Off-contract: Customer: "I'm thinking of switching to provider B as my bills
are high." Provider: "I'm sorry to hear that, can I knock $15 off your bill?"

On contract: Customer: "I'm thinking of switching to provider B as my bills
are high." Provider: "Certainly, that'll be $200." (Or your remaining ETF
amount.)

But hey... free phone!

------
clarky07
At this point, I have <2% users on something < iOS 4.3. I have 0 users < iOS
4.0. There are a few users out there I'm sure, but it's so small of a number
as to not be worth supporting as either Apple or as an app developer. 95+% are
on 5.0 or better, and I'd be willing to bet >80% will be on iOS 6 in the next
month. Supporting iOS 3 at this point is silly.

------
Splines
I've considered using source control on my IPAs just in case I want to roll-
back an app. It's happened a few times, like when developers break
compatibility, or when they introduce ads and/or IAP, or sometimes I just
don't like an update.

~~~
nnnnni
I _ONLY_ update programs through iTunes. When it sticks the old version in my
trash, I grab the ipa and put it into my "backups" directory.

I've known way too many people who have been burned by things like "ugh, this
version doesn't work on my phone, but I have no way to get the previous
version!"

Also, there are cases where a feature is removed from the new version, thus
making it useless. My system helps fight against that.

~~~
fotbr
That's exactly the method I use as well. There's one app that I use that an
old update adds advertising, and breaks most of the functionality. Based on
the reviews, further updates do nothing to improve the broken bits, and made
the advertising even more intrusive.

I see no need to update a perfectly functional piece of free software and turn
into a crippled piece of ad-delivery-software.

If I get careless and hit the "update all" button, or get click-happy in the
list of updates, the old version ends up in the trash can. If I still don't
catch it and dump the trash, I can still go back because I've got the old ipa
sitting in my "Old IOS Apps" directory.

~~~
nnnnni
Sounds like Angry Birds.

There was one game that I had (Clickomania HD?) that went from a full version
that cost money to a free version with 3/4 of the functions removed and ads
added in one update. It's been sitting in the "hey, update available!" section
of my iTunes for close to two years.

~~~
fotbr
A unit conversions utility that has a very nice, clean UI with a focus on
functionality, not on "what trendy widget can we force in there next?"

Well, had, anyway.

------
zachinglis
As much as I agree that Apple should keep support, I am not upset they're not
keeping support for a phone from 2007. We live in an age where most people
replace there phone every 1-2 years. 3 at a very big stretch.

While you may not replace your phone that often, a very large majority do.

~~~
quink
> I am not upset they're not keeping support for a phone from 2007.

Except that sales of the iPhone 3G seized... on June 4th, 2010. Of the iPod
Touch 2G, with the same CPU, on September 1st, 2010.

This isn't about not keeping support, this is a bit more fundamental. This is
about no longer being able to get things onto devices that were sold barely
two years ago any longer. And possibly not even being able to compile things
for those devices.

Two years. That's the lifespan Apple gives your devices. Two years and a few
weeks and it's obsolete.

The iPad 1 was introduced on April 3rd, 2010. And that was the Wi-Fi version,
in the US only. The last update for the OS it'll ever get was released on May
7th, 2012.

Two years, plus a few weeks, and it's obsolete.

Two years is how long Apple plans for your device to last before they want you
to buy a new one.

\----

In fact, if you bought a brand new iPod touch 2G from Apple, on September 1st,
2010, you got your last OS update on November 22nd 2010. That's less than
three months. And people say that Android doesn't support its devices with
updates...

~~~
moepstar
While i agree that (planned) obsolescence is a bad thing, Apple/iOS is still
in a way better shape than Android where some devices never ran a current-gen
version of the OS and never saw an update to a new major version.

[http://theunderstatement.com/post/11982112928/android-
orphan...](http://theunderstatement.com/post/11982112928/android-orphans-
visualizing-a-sad-history-of-support)

~~~
quink
That chart is seriously wrong.

For starters, not least of all due to the definition of "major version".

And also because being stuck on one Android version is not so bad since apps
from the Android Market have way more control over the OS than Apple's. If the
built-in WebKit is a security risk, you can download Firefox or Opera or a
browser that comes with its own WebKit or whatnot, and will be able to do so
forever. You can sideload it, if you're so inclined. On an iPhone 3GS, you'll
be stuck with that version of WebKit forever.

And ever.

Until Apple shuts down their authentication servers (or 404s/times out a
certain URL on their servers for that model of phone) for that phone and what
you'll have then is a brick.

Your iPhone will last as long as Apple chooses. And if Apple doesn't choose,
they're gone and it's a brick. Either way, Apple got your money.

------
DRAGONERO
My iPhone 3GS is dying, I bet there are a lot of iPhone 3G customers that are
either changing phone because their beloved iPhone does not work anymore or
are using their iPhone so lightly that the only application they use is Safari
(no apps installed). So I guess there will be no problem at all or the problem
will affect a tiny portion of the % of people that have an iPhone 3G that it
will just not matter at all.

------
31reasons
Apple is not just in the business of selling iPhone, its in the business of
selling New iPhone to old customers. It makes sense to keep reminding your old
customers that "hey you got old phone, you need to upgrade your hardware to
use this new awesome app".

------
eridius
The last time I restored an iCloud backup, it actually redownloaded older
versions of the apps (specifically, the versions I had installed when I made
the backup). So I think the answer is "use iCloud backups".

~~~
jolan
iOS 4.x doesn't have iCloud.

~~~
eridius
Huh, guess it's been a while since I used that. Oh well.

------
nicholassmith
When developing anything for any platform as developers we all make a
conscious decision about our cutoff points. Do we attempt to support as low as
we can go? Do we get progressive? They're all tradeoffs that we have to make,
and have to decide on.

Apple might not be making it easy to stick with a low as we can go but it's
still doable, so I'd guess the developers have made the decision and taken the
tradeoffs.

------
xer0x
Apple does not support devices older than 24 months. It has always been this
way. I say this because we've seen this pattern with older iPhones and iPod
Touches losing features and functionality since the very beginning.

For example, I was very disappointed when Apple made changes to iOS 2 so that
the original iPod Touch couldn't change it's volume. The newer iPhones and
iPod's had hardware volume controls so iOS removed the easy volume adjustments
from the software. The iTunes app could still adjust volume and that must've
been good enough, because I didn't see many people complaining.

The customer experience matters a lot to Apple, and they are awesome at it.
However, I agree with that article and I would love if they started also
maintaining the experience of their older existing customers.

------
89a
Also no way to stop an app from appearing in the update list even if you
consider the latest update a downgrade

