According to a comScore May 2010 U.S. Mobile Subscriber Market Share report, 49.1 million people in the United States own smartphones. Of those smartphones, 24.4% are Apple iPhones–and these stats don’t even include the impact of the June launch of iPhone 4. Since the release of iPhone 4, Apple has sold over 1.5 million iPhone 4s. Sales of iPhones are continuing to grow, with Apple reporting its best sales in the second fiscal quarter of 2010. The iPhone’s popularity is exponential, and developers are jumping on board to create apps for both the iPhone and its sister tablet, the iPad.
In this report, we’re going to look at the iPhone, its features, developer tools and support, costs, demographics, and how the iPhone shapes the future of mobile web development.
The iPhone 4 Feature Set
The iPhone 4 has been built on the successes and failures of previous versions of the iPhone, and Apple has taken note of the requests from end users and developers when they created the device. iPhone 4 features the same super fast A4 processor that the iPad uses, so its processing power is second to none–and the iPhone 4 now supports multitasking, so apps can indeed run in the background.
It also features a new display that Apple calls the “Retina Display” because it is capable of producing a resolution that is finer than the human retina can see. According to Apple’s Steve Jobs, the human retina can only see 300 pixels per inch, but Apple went beyond that and made the new iPhone display 326 pixels per inch. The iPhone 4’s screen is now 960 x 640 pixels with an 800:1 contrast ratio. For those who like to view websites on the iPhone, text rendering has been improved, and is nice and crisp–web pages no longer appear as line after line of pixelated content when they are zoomed out.
It also features improved battery life through the use of a larger lithium-ion battery, a new 5 megapixel camera on the back of the device and a VGA camera on the front, and full resolution HD video at 720p at 30 frames per second along with a backside illuminated sensor. And external storage is now supported with the addition of a Micro SIM slot. As far as connectivity, the iPhone 4 includes the following:
- UMTS/HSDPA/HSUPA (850, 900, 1900, 2100 MHz)
- GSM/EDGE (850, 900, 1800, 1900 MHz)
- 802.11b/g/n Wi-Fi (802.11n 2.4GHz only)
- Bluetooth 2.1 + EDR wireless technology
Another quite amazing addition to the iPhone is what Apple is calling FaceTime, which is an application that enables users of iPhone 4s to have video calls over wifi connections. That’s right, video conferencing in the palm of your hand.
Along with all these features, the iPhone 4 uses a new OS called iOS 4 which has the following features that can be accessed by third party developers of iPhone apps:
- Gyroscope, with six-axis motion sensing
- Digital compass
- Multitasking
- Geolocation (GPS)
- Accelerometer
- Audio and Video Capture
- VoIP
- SMS
- Push notifications
- FaceTime standard
- Contacts
- Camera
- Touch screen interface
The iPhone 4 may have been created in the United States, but it supports more than just English…in fact, it supports 33 additional languages, including English (UK), French (France), German, Traditional Chinese, Simplified Chinese, Dutch, Italian, Spanish, Portuguese (Brazil), Portuguese (Portugal), Danish, Swedish, Finnish, Norwegian, Korean, Japanese, Russian, Polish, Turkish, Ukrainian, Hungarian, Arabic, Thai, Czech, Greek, Hebrew, Indonesian, Malay, Romanian, Slovak, Croatian, Catalan and Vietnamese.
iPhone 4 Development Tools and Support
iPhone developers have quite a few tools, techniques and technologies to choose from. From Apple’s $99 a year iPhone Developer Program (which developers have to join in order to submit apps to the App Store), with its support community, iPhone SDK and the iPhone Dev Center, to Rhomobile’s Rhodes, Appcelerator’s Titanium, Nitobi’s PhoneGap, or even iUI, the iPhone User Interface Framework, there are a lot of options which use different technologies.
The largest debate when it comes to iPhone app development is the use of non-native apps–Apple requires all apps that are submitted to the App Store to have been created using Objective-C, however app tools such as Titanium and PhoneGap wrap apps that have been created using other technologies–such as JavaScript, HTML 5 and CSS3–in an Objective-C wrapper. So far, many such apps have been successfully submitted and accepted by the App Store. Other tools, such as iUI, create web apps that appear and function just like native apps, but are created using a JavaScript library, HTML 5 and straight up CSS.
For those not familiar with Objective-C, it was designed to “enable sophisticated object-oriented programming, and extends the standard ANSI C language by providing syntax for defining classes, and methods, as well as other constructs that promote dynamic extension of classes.” With that mouthful of jargon rolling around in your head, we’ll discuss the myriad of options for iPhone development.
Apple’s iPhone Developer Program
Naturally many developers will want to sign up for Apple’s iPhone Developer Program, which costs $99 per year, and provides access to all the iPhone 4 tools, as well as the ability to submit applications to the App Store. Note that developers can become registered Apple developers without joining the iPhone Developer Program. As a registered Apple developer, which is free, access is provided to
- Downloads – Get the latest builds of iOS, iPhone SDK and iTunes.
- Getting Started Videos – Apple experts discuss a range of introductory concepts for iPhone development
- Getting Started Documents – Fundamental concepts and best-practices for iPhone development
- iPhone Reference Library – Technical documentation on iPhone development
- Coding How-To’s – Incorporate features of iPhone in your application
- Sample Code – Great for understanding and inspiration for development of applications
Keep in mind that in order to use the iPhone SDK 4, however, you will need to be using an Intel-based Mac running Mac OS X Snow Leopard or later–thus far there is no Windows version of the SDK.
Third Party iPhone Development Tools
In order to use the iPhone SDK to create apps, you will need to learn Cocoa and Objective-C. There are plenty of other ways to develop apps for the iPhone which do not require the use of Cocoa and Objective-C, including Rhomobile, PhoneGap, Appcelerator Titanium, and Ansca tools, which enable developers to leverage standard Web technologies such as HTML, JavaScript and CSS and still utilize native iPhone features.
Rhomobile Rhodes
Rhodes is an open source framework which enables developers to create native apps for the iPhone, as well as Windows Mobile, BlackBerry, Symbian and Android. The apps that are created using Rhodes are true native apps which are able to take advantage of the iPhone’s capabilities (GPS, PIM contacts, camera, etc.). One advantage of using Rhodes is that the source code can be compiled to run on all major smartphone devices.