By Nicholas Wright, CEO at AppInstruct
There are many different reasons to create an app: your existing business may have a marketing or functional need, you may have an idea that could become a startup company, or you just have a great idea for something small that could earn some passive income.
Whatever your motivation, all apps follow the same process. In previous posts, I’ve addressed the most common questions people have when starting out:
- Should you hire someone or learn how to code on your own?
- How much should it cost to hire an app developer?
- How can you find and hire the right developer for your project?
- Choosing the best mobile app development technology
In this post, I’ll highlight the factors you need to consider when deciding which native mobile platform you should make an app for, looking specifically at the two leading platforms: Apple’s iOS and Google’s Android.
Location, location, location
The first thing to decide is which geographical market you wish to target with your app. The popularity of the two platforms varies from one country or region to the next.
As one example, Apple retains a huge lead over Android devices in the United States, but the reverse is true of Android devices in South Korea and throughout much of Asia.
Understanding Apple users versus Android users
The next thing to consider is the difference in user demographics between both platforms.
There’s no question that there are now more people using Android devices around the world. However, Apple users spend much more money in the App Store than Android users spend in Google Play.
There are a number of reasons for this, but central to it is the fact that Apple sells only premium products; Android can be found on a huge range of devices, some of which are very moderately priced.
The result is that the average Apple user tends to have more disposable income, and be more engaged with the technology, than the average Android user.
This being said, Android tablets sell at a fraction of the cost of comparable Apple products, so many parents have begun buying them for their kids. If you’re releasing an app for use by children, Apple may no longer be your market.
Devices at the top end of the Android market – like the Samsung Galaxy S4 and S5, Google Nexus 5 and Moto X – have hardware that is actually superior to Apple’s, which is starting to tempt Apple “fan boys” and early adopters across to the rival platform.
Check for a competitive advantage
There may also be a competitive opportunity or advantage in building an app for one platform over another.
Melbourne, Australia-based indie development company Shifty Jelly saw such an opportunity two years ago, when they built a podcasting app for Android.
At the time, the market for equivalent apps on Apple had reached such a stage of maturity that Apple itself had produced its own version: Podcasts. Shifty Jelly noticed that no such apps existed on Google Play — so they built one. Their app launched successfully and proved a profitable venture for the team.
Balancing requirements for software and hardware
As well as strategic business factors, there are also practical differences in building an app for either platform.
As I’ve discussed previously, the two native mobile platforms use different coding languages – Objective C and Java – so code cannot be shared between them. Objective C, used for iOS, is actually harder for developers to master.
This being said, there are a couple of very important factors that actually make it easier to build an Apple app than one for Android.
The first is operating system fragmentation. Amazingly, although it’s only been out for six months, 82 percent of all Apple device users are using the latest version of its operating system (iOS7), with 15 percent still using iOS6.
Contrast that with the adoption numbers for Android’s latest operating system, KitKat. Released about a month after iOS7, it has an adoption rate of about 1.8 percent. Indeed, there are four different versions of Android, each of which accounts for more than 15 percent of the total Android market.
This fragmentation is a challenge for developers because an app will behave differently in each version. This can be mitigated by releasing the app only on certain versions of the operating system. If you were to solely target the Jelly Bean version of Android, for example, you would reach 60.7 percent of the Android market.
The development challenge is not limited to the operating system; fragmentation of hardware is also a contrasting and significant factor.
An app may behave differently based on the hardware running it. Apple produces a very small number of different devices, which are further simplified as the hardware is often the same among them; except for size, for example, an iPad Air and iPad Mini Retina are extremely similar.
Android is open sourced to a variety of different hardware producers like Samsung, Motorola, HTC and Google. Each not only produces devices in different shapes and sizes, they also all use different hardware from different suppliers.
There’s a multiplier effect that’s created an ecosystem of hundreds of devices. Your app may behave differently on each, so do you need to test for all? The cost of buying all the hardware to do so puts it beyond any independent developer, so compromises must be made.
This is a high-level summary of some of the aspects you should consider when deciding whether to build for iOS or Android. To learn more about the app making process, AppInstruct’s online course provides all the business and technical elements you need to learn to understand how to make an app.
In my next post, I’ll explore the cloud platforms you can utilize to efficiently build and prove your app idea.