iOS, Android or HTML5

WalkExplorer on iPhoneWalkExplorer on iPhoneWalkExplorer on Android

 

Wind the clock back to pre 2007. With almost 2000 different platforms, supporting mobile was a significantly complex proposition (although several startups stepped up to solve the problem).

Then in June 2007, the iPhone arrived. Within a few years options were a lot clearer. The iPhone supported full desktop web and the need for mobile web decreased.

Apple offered HTML5 apps for developers / businesses that wanted a richer experience. However, developers and businesses wanted the rich functionality that offered by native code (i.e. using the same frameworks that Apple used), so Apple offered an SDK (Software Development Kit) and opened up an App Store. The power that a native app provided came at the expense of a significantly more complex development process. 

Roll the clock forward to today.
The landscape is again considerably more complex. Android, Blackberry and Windows phones offer over a 1000 different screen sizes and hardware configurations.
So, what are the options.

There are three main possibilities.
Native - that is creating apps that run specifically for a particular hardware platform such as iOS or Android. There are now significant iOS developers unlike several years ago. And Android, a Java platform, benefits from the many Java developers that are in the market place.

The cases for and against iOS and Android are:
The Android market is very fragmented (for example, there are a thousands of different screen sizes on Android which makes development tough whereas on iOS there are just three). Also, patent issues are obstacles in Android’s future growth. And Apple is now the largest technology company in the world. It has a lot of spare cash, is in charge of the entire vertical segment (although Google’s purchase of Motorola show they are making inroads in this area) and is very influential in terms of the direction the mobile industry takes (for example, the introduction of the iPad).

HTML5 - this provides cross platform functionality. Develop once and deploy everywhere (sound familiar?). However, HTML5 does not give access to all the functionality a native app provides (such as use of the camera or access to In App purchasing. There are startups that are tackling this but it remains fragmented. Another problem is it won’t be ratified till 2014. That’s a long time in the mobile world. But, there are HTML5 apps already out there - Google has a complete suite of HTML5 products.

Cross-platform tool kits:
Various tools exist, e.g. Sencha, Titanium and Phonegap, that offer HTML5 options for developing apps. They have very different ways of achieving this with Sencha and Phonegap offering a native shell around HTML5 whilst Titanium compiles your HTML5 directly to native code. 

So, what platform should you choose?
Mobile internet will overtake desktop internet within 2 years in terms of usage and revenue. The majority of this time is currently through mobile apps (as opposed to mobile web) so we’d recommend experimenting - try creating both an HTML5 app and a native app. The costs are now significantly lower than they were a few years ago. You should be able to build an HTML5 app or a native app for under a few thousand pounds.