Seven things all iPhone apps need

Danny Gorog
29 December 2008, 8:00 PM


Thinking of making an iPod or iPhone app? Here's a list of things that will make it a success.


If you've got an iPhone or iPod Touch you've probably downloaded some apps to play with. If you've downloaded more than one, you'll quickly realise that some are better than others.

For developers there are lots of choices to make when crafting an app; not only does the app need to be based around a good idea, but the app needs to behave in a way that is familiar to iPhone users. If it takes a user more than a minute or so to figure out how your app works, chances are they'll never use it again and will leave you a bad rating.

Both outcomes are bad, particularly when you consider that to be successful in the store, your app needs to be in one of the 'top' something lists.

With that in mind, I've put together a list of things that, in my experience help make an iPhone app great.

An iPhone app should do one thing well

Design your app from the ground up to perform one function well. Reducing the complexity of your app reduces the time it takes to master, and the quicker a user can get familiar with your app, the more useful it's likely to be. There are lots of great examples of apps that do one thing well like Things, Byline, Traffic Australia and Notes.



Performing one task well doesn't mean you shouldn't provide configuration options via preferences, but, your default settings should be appropriate for 90 percent of users.

Make sure it performs all tasks well

The converse of point one is also true. If you're designing an app that needs to do lots of things, make sure that it performs all the functions well. A good example is 1Password. It's a complex app that stores passwords, notes, lets you generate random passwords and also provides the ability sync to a desktop client, but, if you're familiar with the desktop client you'll automatically understand the iPhone app, and all the functions work as expected.



Use icons and imagery that are familiar

The iPhone interface is great because it's so visual. Icons mean something - just look at default set of app that Apple ship on the iPhone and you'll see why. When you're designing your app, make sure that you follow the same rules. Use familiar icons, like a plus to add something new, or a star for favorites. Only design your own icons if a standard one that users are already familiar with doesn't exist. Sticking to the basics will mean users will understand your app better.

All apps should autosave

I can't believe how many apps don't remember the state they were in on exit. This, to me, is almost an instant fail, especially on a device like the iPhone where phone calls and SMSs can interrupt whatever your user is doing frequently.

Apart from anything else, the iPhone is not perfectly stable -- you need to plan for the fact that your app probably will crash.

Let me listen to my music

One of the main features of the iPhone is the iPod app. It's one of the special few apps that Apple allows to run in the background. Make sure that users can continue listening to their music while using your app. Games are especially guilty of doing poorly in this area. If you're a game developer and you think that your users should listen to the music that came with the game, at least give them an option to turn it off.

Where appropriate, all apps should be location aware

There's really no excuse here. If an app isn't location aware, and it could be, delete it now. It's all part of making the experience better for users, and, if the phone automatically knows where they that's one less piece of information they need to input.

On the flipside, users should be able to enter location info manually, in case they want the information your app offers about another area. AroundMe, an app I use regularly, doesn't offer this but it should.



Focus on minimal startup time

This is a no-brainer and isn't just relevant on the iPhone but all mobile platforms. The faster an app starts the more likely it is to be useful. Any app (games excluded) that takes more than between 5-8 seconds to load is too slow. And, instead of pretending the app has loaded (Apple give developers the option to show a splash screen while the app is loading), just present a black screen, or present the user with a 'loading' dialogue.

Can you think of more that I've missed? Sound off in the comments.

Post your comment



Comments

RSS feed Email alert

AndyCee (New user):

I have one, though not as general as yours.

The app should use the iPhone's proxy settings, if it wants to connect to the internet.

Even when this is configured in the network settings, I've only ever seen Safari use the settings. The result is that no other app can connect to the net behind a proxy server.

30 December 2008, 2:29 PM (4 years ago)report abuse Send to a friend reply

Tin (User):

Or at least do so by default and give an option for other settings if the user wishes. I've always hated how PocketPC and Mac app developers have this unholy obsession with system wide proxy settings.

30 December 2008, 9:43 PM (4 years ago)report abuse Send to a friend reply

Tin (User):

I have to agree in general with this list. Although I do feel that startup time and auto saving would be irrelevant if Apple removed the stupid "one 3rd party app at a time" restriction.

Apple's weird list of 3rd party app restrictions is what stopped me buying one. If they removed the restrictions, I'd probably get one straight away (a 900MHz HSPA version would help the decision a lot too).

30 December 2008, 9:53 PM (4 years ago)report abuse Send to a friend reply

anonymous user Anonymous user