Native vs Cross Platform Mobile Apps

At the time of writing, more Australians use an Android phone than an iPhone, and they download more apps. And yet many of our clients choose to develop their app for only one platform to start with, and most choose iOS over Android.

The decision to develop for just one platform comes down to cost. If you develop for iOS and Android then your development cost may double, so choosing one platform allows you to get a product to market and validate a concept with an initial offering, before deciding whether to invest further in other platforms.

The decision to develop for iPhone over Android comes down to demographics, as there are different segments of industries that widely adopt a type of phone, and it makes sense to target these. There is also a legacy context, as Apple was the first to smash into the mobile space and remains a darling to many.

When you write software code for an app, you use a different ‘language’ to write the app depending on whether you’re developing for iOS, Android, or Windows. This creates what is called a “Native App” and is generally the preferred method to write an app. The code used to develop a native app is designed specifically for that platform, and will generally be the most efficient application. Native apps also look “right” for the phone they are being used on, which is important because iOS apps look significantly different to Android apps, and users expect app to look consistent with their experience on their phone. We talk about this more in the topic beautiful apps.

Fortunately, there is an alternative available to those on a budget, because it is possible to use a cross platform tool to develop a single set of code that will run on iPhone, Android, and Windows phones. There are many platforms to develop this code, and some of them are good (some really aren’t). If you develop an app for iOS, Android, and Windows then you can almost take to cost of one app and multiple it by three to determine the cost of developing for all three (with lots of caveats to explain that this isn’t always the case). Using a cross platform tool, the time to develop for all three is longer than developing for just one, with extra time being needed mainly to test and customise the code for multiple devices, but for far less than developing for two. This allows a huge saving and a reach to potentially millions of users!

If your app uses phone hardware, requires high efficiency, or custom appearance for each platform, then you should use a native app that is optimised for that environment. For everyone else, you should absolutely consider a cross platform app because it allows you to provide your app to users on all major types of phone at an reduced cost.

Until very recently, the web site for one popular cross platform tool had an example that highlighted exactly why their product is so terrible, and why you consumers are hesitant to use cross platform apps. This example showed some simple code to draw a text box and a button on a form, and showed below how that code would look on iOS, Android, and Windows phones. It was disgraceful; none of the apps looked how they should and the text box and button positioning on the form was wildly inconsistent and just bad on all three samples. That particular demo has now been withdrawn from that site for obvious reasons, but our concerns with their platform remain.

Other tools are far superior, and we have had very good success developing cross platform apps using the next generation of tool. We have produced beautiful apps for enterprise, government and startup clients, and for a wide variety of applications; and the results have been universally applauded. Cross platform apps aren’t for everyone, but please let us know if this seems a good option for your situation.

For more information about how we work, the next topic discusses why we are agile.

Back to Dapper Academy

SVG cover layer an animated layer to switch from one slide to the next one