Having seen the success of some developers in selling Apps for the iPhone, and with the iPad now out, there must be many developers thinking "Why not Me?". Notable early successes include Trism in 2008, where developer Steve Demeter created the puzzle game as a side project and made $250,000 (net of Apple's cut) within a couple of months.
Last year saw FireMint's Flight Control (Picture above) hold the #1 spot for several weeks and it sold over 700,000. The link above leads to a 16 page PDF where they published their sales figures. They're hoping to repeat the success now with an upgraded HD version for the iPad.
Billion $ Business
There are well over 100,000 registered iPhone App developers, with over 186,000 Apps in the App Store for the iPhone/iPod and over 3,500 for the iPad when this was written (according to 148 Apps). Apple by their own admission has sold over 85 million devices (50 million iPhones and 35 million iPod Touches) and games are the number one category which makes it a lot harder to achieve success. In April according to 148 Apps, an average of 105 games were released every day!
A year ago, one billion apps had been downloaded and it now stands at 3 billion. A large number of those are free (approx 22% of Apps ) but it's still an immense amount of money paid out by Apple to developers after the 30% cut that Apple takes.
It's not that easy to make a lot of money. Creating the App is one thing but selling it in sufficient numbers is a whole different ball game that demands that you promote it, and provide free copies to reviews. In some cases, people pay reviewers to get their Apps reviewed. If you're really lucky and Apple pick up on it you'll get a lot of free promotion.
Getting StartedIf you're new to iPhone development, then you should definitely read this first:
- My First iPhone App, a Programming Tutorial.
In a nutshell if you want to develop for the iPhone:
- You need a Mac Computer of some kind, Mac Mini, iMac, MacBook etc. You cannot develop for the App Store on a Windows or Linux PC.
- Join the Free iPhone Developers Program. This gives access to the SDK and Xcode development system which you download and install. It includes an emulator so you can test most apps except those which need hardware such as the camera or GPS.
- Pay $99 a year for access to the developer program. This lets you install apps on your own iPhone/iPod Touch/iPad. It also gives earlier access to betas and past versions of the SDK.
So you've been developing away and have got a version that runs in the emulator. Next you've paid your $99 and been accepted in the developer's program. This means you can now try your app out on your iPhone. Here is an overview of how you do that. Apple's developer website provides a lot more detail.
You need an iPhone Development certificate. This is an example of Public Key Encryption
- Read more about Public Key Encryption.
For that you have to run the Keychain Access app on your Mac (in developer tools) and generate a Certificate Signing Request then upload it to Apple's iPhone Developer Program Portal and get the certificate. You'll also need to download the intermediate certificate as well and install both in Keychain Access.
Next up is registering your iPhone etc as a Testing device. You can have up to 100 devices which is handy for larger teams, especially when there is iPhone 3G, 3GS, iPod touch and iPad to test on.
Then you register your application. Finally, armed with both application id and device id you can generate a Provisioning Profile on the Apple website. This gets downloaded, installed into Xcode and you get to run your App on your iPhone!
The App Store
Unless your are a large company with over 500 employees or a university teaching iPhone App development there are only two ways to distribute your apps.
- Submit it to the App Store
- Distribute it by Ad-Hoc Distribution.
Distributing through the App Store is what most people I'd guess want to do. Ad Hoc means you produce a copy for a specified iPhone etc, and can supply it for up to 100 different devices. Again you need to get a certificate so run Keychain Access and generate another Certificate Signing request, then go to the Apple developer portal website and get a distribution certificate. You'll download and install this in Xcode and use it to generate a Distribution Provisioning Profile.
To submit your App to the App Store you'll also need the following:
- A list of descriptive words so it can be found in the App Store.
- Three icons (29 x 29, 57 x 57 and 512 x 512).
- A Launch image that appears while your App is loading.
- A few (1-4) screenshots of your App's screens.
- Contract information.
Then you do the actual submitting to the ItunesConnect website (part of Apple.com), set prices (or is it free) etc. Then, assuming that you've avoided the many ways of getting Apple to reject your App from the App Store, it should appear in a few days.
Here are some of the reasons for rejection but it's not complete, so please read Apple's best practices document:
- It's considered objectionable e.g. pornography.
- It crashes.
- It has a backdoor or is malicious.
- It uses private APIs.
Apple says that they receive 8,500 Apps per week and 95% of submissions get accepted within 14 days. So good luck with your submission and get coding!
BTW if you decide to include an Easter Egg (surprise screens, hidden content, jokes etc) in your App be sure to let the review team know how to activate it. They won't tell; their lips are sealed. If on the other hand you don't tell them and it comes out, then so might your App from the App Store!