Database Reference
In-Depth Information
CHAPTER 8
Long Term Maintenance of iOS
Enterprise Applications
So, you've got an app in the store, people are starting to download and use it, and since
you read this topic from end to end, it went without a hitch and you're a hero at your
company. Alas, your job has just begun. Now you have to support that sucker!
Of course, this is true of any software that has to actually be put in the hands of end
users. Wouldn't life be so much easier without them? But, since you have them, you're
going to need to deal with them in the long term. This presents one particular challenge
for enterprise developers, and it's what this chapter is all about.
If your application connects to some resource in the cloud that's under your control,
you can close this topic and crack open a beverage of your choice. But if it connects to
a backend server that isn't under your control, and which may exist at multiple version
levels at the same time, read on.
A classic example of the first scenario is Salesforce. Individual customers don't install
the Salesforce server—they use the common one in the cloud, and it is always at a given
API level and server version. If Salesforce wants to release a new iPhone app, all they
have to do is make sure that it lines up with one of the current versions of the API living
on their servers, and they're golden.
But what about a scenario where your application is going to have to connect to multiple
different versions of the server? In the case of the app I developed, our customers can
take a year or more to actually place a new server version into production use, so we
were facing the very real possibility of having to support 4 or 5 years worth of different
APIs as we enhanced the backend functionality to add new features to the app.
No problem, you say: just have the users install the right version of the app for the API
version they connect to. Sounds good, but remember that with the App Store, you can
only have one version of the application available for download at any one time, and
it can be automatically updated if they connect to iTunes. So short of telling customers
not to upgrade their app, you have no way to keep them from downloading a new,
 
Search WWH ::




Custom Search