This content is part of the Buyer's Guide: Mobile app development tools: A buyer's guide
Evaluate Weigh the pros and cons of technologies, products and projects you are considering.

How to differentiate leading mobile operating systems

Expert Matthew David explains differences between leading mobile operating systems and how they differ from traditional desktop applications.

Completing tasks on a mobile device is not new. Apple's iPhone redrew the smartphone category and quickly propelled the "fad" devices into "standard" ones. Today's phone market is a mixture of Android, iPhone and Windows devices. The introduction of applications on these phones has dramatically changed how we engage with our professional and personal lives. Apps are the catalyst for converting a phone to a tool used to transform how a business operates; how consumers engage with a product; and how supply chain efficiencies can be improved.

In this article, you will come to understand the development differences between the leading mobile operating systems.

Mobile vs. desktop development, an explanation

Since 2010, there has been a dramatic surge in the sales of smartphones, and we also saw the introduction of Apple's iPad -- an updated approach to tablet computers. This has changed the way we work on and develop for computers. What is important is that core functionality such as email, Web surfing and calendar management can be done by mobile devices, which have upended how people connect to the Internet. Increased performance and a continued fall in price make it easier to switch tasks to other devices. For instance, email, social media and video are now more frequently done on a phone than on your desktop computer.

In addition, mobile devices have many hardware features not available on desktop computers, such as front and rear cameras, accelerometers, GPS, LTE for wireless data, pedometers and many other features.

Finally, a new set of operating systems have come out to make developing solutions for smart devices much easier.

The different platforms for mobile development

There are three leading mobile operating systems: Google's Android, Apple's iOS and Microsoft's Windows. According to a Gartner report, Android is being used on many more devices than any other OS. With that said, more money is made from iOS than Android and Apple devices are more popular in the enterprise. Bear in mind, the mobile OS market is still growing globally and it could be more than a decade before the market settles.

Mobile development is a choice between iOS or Android. Currently, Windows has low, single-digit adoption in most enterprises.

Google's Android

Android is now the world's most popular mobile operating system. The foundation for Android is Linux. The popularity of Android is largely driven by Google's distribution model: Android is an open source project that gives phone manufacturers and cell phone carriers free license to use Android and even modify the core OS for their devices. The freedom to modify Android has led to many challenges in what is now called Android fragmentation. Most instances of Android follow the core release model from Google.

With that said, the release of Android 5.0 Lollipop in November 2014 established a new baseline of functionality in Android. And Google's latest operating system makes OS upgrading easier and more consistent for Android users.

It is free to develop apps for Android using either Eclipse or Google's Android Studio and it only costs a one-time fee of $25 to have your apps available for download on Google Play.

Apple's iOS

The iPhone and iPad are powered by iOS. There are more than 500 million devices worldwide actively using this OS. The second release of iOS introduced the concept of applications and opened up the secured and controlled environment that Apple has been known to operate in.

iOS has a foundation in Darwin, a Unix open source OS that is also used in Apple's OS X. Through leveraging an existing OS, Apple was able to extend Xcode, Apple's flagship development tool, to support iOS app creation. In June 2014, Apple released Swift, a new programming language that makes it easier for developers build iOS apps.

The current Apple Development Program costs $99 per year and includes submitting your apps to the iTunes App Store.

Microsoft's Windows

Mobile is not new to Microsoft. In fact, Windows CE, the first mobile Windows OS, can trace its history back to 1999. For whatever reasons, Microsoft could not capitalize on their early entry into the mobile market.

In 2010, the launch of Windows Phone 7, featuring a brand new interface design, was supposed to revolutionize the Microsoft brand in the mobile market. It did not. Today, with Windows 10 touting universal apps; i.e., the ability to build and deploy apps for all Windows platforms from one code base, Microsoft hopes to gain ground in the mobile market.

Visual Studio is the default tool for development of Windows Mobile apps. Apps that are created can be distributed through a private, enterprise app store (most mobile device management solutions have a private enterprise app store) or through Microsoft's official Apps for Windows store.

What about the other platforms?

There are other mobile operating systems for which you can develop solutions. They fall into one of two categories: proprietary OS' and HTML5 mobile operating systems.

The leading proprietary mobile OS is BlackBerry. Once the leader of the smartphone market, Blackberry now finds itself as a small player for more specialized markets.

There are several operating systems that use HTML5 to build solutions. For example, BlackBerry's QNX (used in many medical devices and smart car radios), LG's WebOS and Samsung's TIZEN all use HTML technologies. So what does it mean to build a solution with HTML5? Here is the good news. The same tools used to build websites can also be used to build applications running on Web-centric operating systems. In other words, the investment made in building Web teams can be reinvested into OSs like QNX, TIZEN and WebOS.

The bad news is that those aforementioned OSs are niche operating systems. This may change, but that's the current state of HTML5 build solutions.

Definition of native and hybrid

The rapid adoption of iOS and Android has created a problem in the development world: Which operating system do you build solutions for? Typical development is completed with supported tools such as Xcode for iOS, Android Studio for Android and Visual Studio for Windows. Building mobile solutions with the recommended development tools and languages is often referred to as native development.

A new market of tools has now emerged, looking to emulate the promise of Java: build once, run everywhere. Tools such as Adobe's PhoneGap, Titanium Appcelerator and Xamarin enable developers to use one language, such as JavaScript for PhoneGap and Appcelerator or C# for Xamarin, to build one set of code that can be deployed to many platforms. These types of apps are referred to as Hybrid.

Pros and cons of native and hybrid

Hybrid has a strong positive: using HTML5 helps to quickly build solutions for the leading platforms. The learning curve is not too high and you can have an app running in a matter of a few hours. Many of the enterprise, sales and supply chain offerings can be completed quickly and effectively with hybrid tools.

The challenge with hybrid comes when you are looking to build complex solutions. A common challenge with hybrid tools is that they are built to support the lowest common denominator across the platforms. If, for instance, you want to build a solution leveraging a new API, such as Apple's TouchID, and the hybrid does not support that feature. The tool doesn't support the API unless you hack together a workaround.

Enterprise mobile development is often completed with specific tools and frameworks referred to as Mobile enterprise application platforms (MEAPs). The goal of a MEAP is to provide cross-platform tools that make it easy to connect with back office databases and systems. Popular MEAPs include Kony, SAP Mobile Platform and IBM Worklight. Common trends with MEAPs are drag & drop interfaces for non-developers and tools built on top of PhoneGap.

Which platform should you develop for?

Determining whether to develop native or hybrid isn't the only consideration when deciding how to build a mobile app. Other factors you need to consider when selecting a platform to build an enterprise app include:

  • Security and the ability for employees to easily authenticate will be your first two challenges.
  • Do you want to leverage MEAP for cross-platform development?
  • Will you be creating tools for tablets and phones?
  • How do you want to connect with your back office systems?

Many companies are struggling with how to leverage mobile beyond BYOD mail, calendar and contact synchronization. The secret is to define a small, manual task that can be enhanced with a mobile tool such as an inspection. Gain support for the small initiative and document how it is successful. The goal is to build credibility through visual signs of progress. A small success will give you the credit you need to invest in larger success.

Next Steps

Businesses are looking more inward to see what apps to develop next

Learn more about Mobile App Development Platforms (MADPs) for creating in-house mobile apps for the enterprise

Android, iOS development are the focus of this talk with the Skimble CEO

This was last published in June 2015

Join the conversation


Send me notifications when other members comment.

Please create a username to comment.

Which mobile OS does your enterprise use?
We're a BYOD shop, so mostly iOS7, some iOS8, maybe a little android. No one I know is using blackberry -- I do know a few people in the Toronto area who use blackberry though.
We're about 50% iOS, 30% android, 10% windows and the other bits scattered across a variety of systems. No blackberry because none of our standard apps have been written for it.

Since the apps we use generate data that can be read on any device and any OS, which device and what OS becomes far less important to anyone here. The job is to do the job at hand and share that information with everyone on the team.  
We are BYOD, but by observation, I'd say we are 75% iOS and 25% Android. That's within my division and what I can see, other parts of the organization may be different, but since we use Macs primarily for development, the iOS percentage may be due to that.
None.  We are not allowing mobile OS for Enterprise usage.
It really depends on which part of the business you look at. At the executive level, it’s primarily iOS (hence the massive support for iOS in the conference rooms). Here in IT it’s predominately Android. Throughout the rest of the business, it’s really about a 50/50 mix of Android and iOS, with the occasional Windows phone thrown in.
With BYOD, I'm not sure it's relevant. Develop responsive design/mobile friendly apps and let people use what they want to. I know the world seem to be going for native apps, but it seems like waste to me - then you've got to have two development teams.
Our platform grows increasingly less important all the time. Most of the apps we use here are generalists, writing and reading to iOS and android and even to Windows.

For the most part, at least in this enterprise, every OS is a bit like a car.  Each one gets us where we're going, some appeal to some, some to others, but they're mostly the same automation in different disguises. 

We rely on the apps we need. We use whatever OS reads the apps we use. In some cases, that's any OS on the shelf, pick whichever you like, they're all the same....
I’d have to agree with Matt and go for a responsive design. There are just too many variants to cover out in the wild, and a responsive design lets you focusing on creating a good user experience.