Follow these steps to get started with the iPhone and iPad development.
Set up your machine
- Get the latest OS version Snow Leopard
- Get the iOS (includes the iPhone/iPad/iPod) and subscribe to the iPhone Developer Program
- Paid membership - Costs: US$ 99/per year (Lets you deploy on iPhone/iPad hardware and give you access to unreleased iPhone/iPad OS)
- Free membership - Gives you access to actual releases of iPhone/iPad OS and you can only deploy using the Simulator
There are the following options (NOTE: the Apple EULA might not allow development on non-Mac-based operation systems or non-Apple-made hardware)
- install and boot a MacOS on a PC:
- run MacOS on an emulator or VMWare image
- use alternative SDKs (here you might need a jailbreak for your device - not recommended)
Once you've installed Snow Leopard, follow step 2. from the Mac-setup above (iPhone SDK)
Technically it's possible to run a MacOSX in a virtual machine on Windows. Performance is not good.
A community doing that can be found on http://www.hackintosh.com/), they drive projects like Project X86 etc.
- Apple licenses don't allow this
- OS adoptions (drivers) with Hackintosh specific changes are necessary
- probably not all features and functions available
- no support
Another valuable link is: http://wiki.osx86project.org/wiki/index.php/Virtualization
Licenses and everything legal
In order to use SDK and develop apps, Apple has multiple licenses and agreements in place. Individual or corporate licenses are necessary for
- Apple membership enrollment (to get access to Apple resources)
- SDK download/usage (to download and use iOS SDK)
- Phone Developer Program License Agreement (for uploading apps in the App store)
Demos: the different Apple licenses also seem to not include information about demoing the app.
Prototyping, Mockups, Testing and Recording
A list of tools can be found on the following page
A good source to start is the [iPhone Dev Center - Apple Developer|http://developer.apple.com/iphone/index.action on Apple's website. It includes
- iPhone/iPad Development guides
- my first iPhone app
- start developing iPad apps|http://developer.apple.com/iphone/library/documentation/iPhone/Conceptual/iPhone101/index.html]
- iPhone human interface guidelines
- and much more...
There is also an open source project on Google Code, for creating a free, portable, high quality toolchain to enable development for the Apple iPhone.
Sample code can be found here:
Depending on the SDK license you can either distribute
- through Apple's App store (standard developer license)
- distribute to up to 100 devices for testing (standard developer license - team license)
- distribute in house with the iPhone Developer Enterprise Program which is available to companies with 500 or more employees and a Dun & Bradstreet number (Link)
- Podcast iPhone/iPad development and Stanford CS193P - great course about iPhone developing. 18 videos - each about 1 hour - are available on iTunes U. Furthermore several exercises are offered
- User Interface Guidelines - Apples UI Guidelines (import if app will be distributed via AppStore)
- iCodeBlog Tutorial - simple example how to consume a WS via iPhone
- Heise (in German): Was man beim Entwickeln von iPhone-Apps wissen sollte (legale und steuerliche Betrachtung)