Alright, so you’ve waded through the native app versus responsive website debate and based on the needs for your needs and your business, you decide you need a native app. The next thing to figure out is the age-old question: “iOS or Android?”
Is it good to choose developing apps for iOS instead of Android? Will Apple fail?
Part of the difficulty surrounding native app development is that it’s a lot of work to develop for one platform — let alone two or three. Although iOS and Android aren’t the only two players in the mobile space, for better or worse, they are the two most dominant. It’s important to remember that other mobile platforms do exist, but to keep this article from going too long, for now, we’ll just focus on iOS and Android.
iOS, Android or Both?
Even as recently as a year ago, asking the question, “iOS or Android” would lead me to say, almost without hesitation, “iOS first, then Android.”
Today, the answer is a bit more complicated. Android is the dominant mobile operating system on a global perspective (though the two are much closer in marketshare in the U.S.) and it beat Apple to the 1 million apps mark. Moreover, with the success of phones such as the Samsung Galaxy S4, brand identity around Android is growing by the day.
My advice tends to be to plan on both an iOS and Android app for most companies, if you think you need a native mobile app. That doesn’t mean you have to launch with both at the same time, but both should be on your ultimate timeline.
Deciding Which to Launch First
If you can’t afford to simultaneously develop for iOS and Android, you have to make the decision of what system to target first.
Here are some factors to consider when deciding which platform to target for an initial release:
What are your current users using? Look at your visitor stats and see what portion of your mobile visitors are coming from Android or iOS. If you see a higher mobile engagement rate from iOS users, it’s a good idea to start with them first. On the flipside, if most of your users are on Android, starting there might make more sense.
What are your tablet plans? Although Android is the dominant mobile operating system, it has not taken off on tablets in the same way. Google might boast that Android tablets have almost half the global market, but when you look at how those tablets are used — or at the usage share amongst tablet apps, it’s clear the iPad is the winner. The one exception is Amazon’s Kindle Fire, which runs a forked version of Android — and thus is sort of in its own category. If you plan on creating a tablet experience, focus on iOS first.
What are your developers familiar with? Even though most companies end up contracting out a good chunk of their mobile development work, it’s worth talking to your team and seeing what they are most familiar with developing in. Developing for iOS requires a Mac (you can work around this but at some stage you’ll need a Mac) and Android’s developer tools — while improving — are not at Xcode levels just yet.
Do you want to charge for your app? The adage that Android users never pay for apps isn’t quite as true as it used to be, but it’s absolutely true that iOS users are more willing — and more likely to pay — for an app than Android users. That shouldn’t put you off of using Android — there are still plenty of ways to monetize that system — but for an initial launch, it needs to be considered. Also consider where you can accept payments from both platforms. Google is continuing to increase the number of countries that support paid Google Play apps but this is an area where Apple still has a substantial lead.
Why Starting With iOS Can Make Sense
Most major apps still launch on iOS first. This usually has little to do with iOS being superior to Android, instead, it’s just a factor that targeting an iOS app is typically less problematic than an Android app.
One of Android’s benefits is that it is available to anyone and on a huge swath of devices. Unfortunately, that can also be a problem, especially for a developer with limited resources.
At the time of this writing, the majority of Android devices finally support Android 4.0 Ice Cream Sandwich or later, with a full third running Android 4.1.x Jelly Bean. That’s huge news and is a big improvement over even just the last six months.
The problem is, there are still 33% of users using some version of Android 2.3.x Gingerbread, an OS released in 2010. Some of the best and most interesting Android features are not available on that older version, which means that if you want to develop for Android, you need to decide: Should I target only newer users or should I also target older devices as well?
The answer to this question will probably largely depend on your market and your location. If you’re in the United States, I recommend to target Android 4.0 or greater. If you have lots of users in Europe or Asia, the situation might be different.
Meanwhile, although there is certainly some fragmentation on the iOS side, the majority of iOS users upgrade to the latest OS version almost instantly.
If you build an app for iOS 6, you can know that it will work on the iPhone 3GS all the way to the latest iPhone 5 and the iPad 2, iPad 3, iPad 4 and iPad mini. Moreover, because Apple controls the hardware and software, you don’t have to worry about issues such as differences in screen resolution or graphics processor or support for X, Y, or Z. You still need to test on every device, but the number of devices to test is much, much lower.
A big question mark is the upcoming release of iOS 7. iOS 7 has some significant UI changes although it will run on every iPhone and iPad currently being sold, it won’t work on some older devices. Still, for companies looking at developing a new app today, I would still strongly recommend creating an iOS 7-only app. It’s a bold move but from the developers I talk to on a daily basis, it’s going to quickly become the norm for more and more high profile apps. Moreover, the design for iOS 7 is so different, any app that isn’t designed using that new language will look out of date.
Regardless of what system you start with, it’s not uncommon for businesses — especially small businesses — to want to limit the amount of code they have to write for both versions of an app.
Depending on what type of app you’re creating, this is where a cross-platform framework such as Appcelerator or Sencha Touch or Phonegap can become useful.
It’s important to remember, however, that is your app really needs to do a lot of native functionality — or if it handles a lot of data — there is no substitute for going native.
Nothing is worse than having an Android app with iOS-style buttons or an iPhone app that is slow as molasses because it’s just a web page in a wrapper that looks like an app.
Native apps take a lot of work. Full stop. Make sure you can make the investment before getting started.
Will Apple (or Google) Fail?
The second part of Theo’s question was really about the long-term viability of app platforms. I’m not the Amazing Kreskin and I can’t predict the future, but from how the world looks now, betting on either Android or iOS is not going to be a problem. Apple has an entrenched ecosystem and hundreds of millions of loyal customers.
Could that dry up and disappear tomorrow? Absolutely. Look at Nokia. Look at BlackBerry. Still, I wouldn’t bet on that happening any time in the near future.
With Google, it’s the same thing. Yes, most people think of Samsung when they hear “Android” rather than Google — and yes, that is a problem — but Android is growing and is on fire.
It’s OK to Just Pick One
While I maintain that for most small businesses and brands, a dual-OS approach is best, it’s okay to just pick one platform if you don’t have the money to make it work.
Plenty of developers do very, very well just focusing on iOS. In fact, part of what keeps me loyal to iOS as a platform is the fact that those apps are iOS only.
On the flipside, there is also some incredible Android-first development happening too. Moreover, the fact that the Google-branded apps are so good on Android is often a reason that buyers go Android first.
The reality with mobile apps is that you won’t know everything you need to know until you get your app in a marketplace — any marketplace. Try your hand at iOS or Android and then take what you learn to put in the release for the next platform. If you see little engagement or use on one platform — you can always discontinue the app and opt for a more mobile first web experience.
Business owners — where do you fall in the iOS vs. Android debate? Let us know!
Mashable composite: iStockphoto, ScottTalent