Exploding Phone's Managing Director, Andy Long, discusses the factors to be considered when choosing which app platforms to support.
Which Smartphone platforms should be support?
Currently the two biggest platforms are iOS (iPhone + iPad) and Android, which make up over 90% of Smartphone users in Western markets. Each Smartphone platform uses different technology and as such an app written for one platform cannot be simply transferred to another. This means that the effort involved in writing and maintaining an app for both iOS and Android is roughly double to effort for just one. This doubles the development and support costs and will inflate the overall cost of the project. Unless there is a compelling reason (e.g. corporate phone selection) it’s difficult to justify a decision other than iOS and/or Android. Furthermore, many customers start with a single platform to gauge demand and give themselves an opportunity to receive user feedback before embarking on a second platform.
Tablet vs. Phone?
In general phone apps will run on tablets. The two main platforms have slightly different approaches.
On iOS an app can support just the phone, just a tablet or both. Apps that support both are called Universal apps. An app designed for iPhone can run on an iPad but in a special compatibility mode that shows the iPhone app either in a small window or scaled up to full screen. An app designed for iPad cannot be run on an iPhone as the screen layouts are too big to be shown on the small screen. A universal app alters its behaviour depending on whether it is running on an iPhone or an iPad. The main difference is usually just the user interface, which will be optimised for the device it’s running on. There is extra effort involved in creating a Universal app and generally there is an approximately 40% premium over an iPhone only app.
Android apps will by default work on handsets and tablets without any additional development effort. However Android screen layouts work by scaling up to fill the available screen space and often a handset app can look unattractive when scaled to a tablet size screen. It is possible to include layouts specific to larger screen in an Android app, which provides a better experience on tablets. However, as with iOS, this is additional effort and does demand a development premium over a handset only app.
Cross Platform vs Native?
Exploding Phone develops native apps, that is apps that have been written specifically for the mobile platform they run on using the tools provided by the vendors of the platforms. Some app developers adopt a cross-platform approach. On the surface this appears to be efficient as it only involves creating the app once which then nominally works across mobile platforms without any additional effort. These cross-platform tools work by writing the app in HTML5 (effectively a micro-mobile web site) and then creating a simple wrapper native app that is essentially just a web browser to display the HTML web page. We believe this approach is too much of a compromise for anything more than the most trivial of requirements. The cross-platform app provides a much inferior user experience to a well-designed native app. Screens often have frustrating delays on loading, on scrolling on selection. Furthermore, cross platform apps cannot easily take advantage of many of the mobile platform’s native frameworks and toolkits. Previously Exploding Phone has undertaken projects where the client has originally opted for a cross-platform solution, lured by the promise of smaller cost. However, they have been so underwhelmed by the finished product they have ended up having native versions developed, making the overall cost of the project higher.