The iPhone has a terrific touchscreen and great features like 3.5G mobile broadband and GPS, making the iPhone highly suitable for some enterprise mobile applications. If you're thinking of building your own iPhone application, here are a few useful pointers:
-- You need a Mac to build iPhone applications. Building iPhone applications on a PC is not supported by Apple.
-- Register as an iPhone developer here and download the iPhone Software Development Kit (SDK), which includes the iPhone Simulator. Registration is free, but to test your application on an actual iPhone or iPod Touch, you'll need to purchase the Standard or Enterprise iPhone Developer Program (more details below).
-- You'll program iPhone applications using the Objective-C programming language. At first glance, an Objective-C program looks similar to C++ and Java, but when you look closely, you'll see that the object-oriented programming is done differently--more like Smalltalk.
-- You'll use the Xcode development environment provided in the iPhone SDK to compile your Objective-C program and test your application against the iPhone Simulator. It's somewhat similar to using Microsoft Visual Studio to compile and test your Windows Mobile applications. I found this tutorial very helpful in creating my very first iPhone application.
-- The iPhone SDK gives you programmatic access to a rich set of functions on the iPhone: camera, accelerometer, animation, 3D rendering with OpenGL ES, embedded SQLite database, GeoLocation (i.e. GPS), and so on. You can most certainly build powerful iPhone applications with the SDK.
-- If you want to run your application on an actual iPhone or iPod Touch, you need to purchase the Standard iPhone Developer Program (US$99) or the Enterprise Program (US$299). The Standard Program lets you install your application on up to 100 iPhones via the "Ad Hoc Distribution" method. The application is tied to the iPhone's unique device ID through digital signing (similar to the Symbian Signed program for Symbian applications).
-- The Enterprise Program is meant for companies with 500 or more employees who wish to create their own proprietary in-house iPhone applications. It's also possible to distribute your application through the public iPhone App Store, but the process is more complicated and I won't describe it here.
It took me a few hours to get my iPhone application signed correctly and working on a real iPhone. Be warned that the iPhone SDK documentation can be quite hard to navigate and comprehend.
Next week I'll write about building applications for Google Android phones.