

Should You Build for iOS or Android? Discover What 7 Mobile App Experts Say - flaviuss
http://blog.mobiversal.com/ios-or-android-first.html

======
mmahemoff
"Creating an app for Android means taking in stride the inconsistency in
hardware calibration, as there is a huge diversity in the Android market in
terms of the brands that sell Android phones."

Please not this. The fragmentation argument sounded very clever in 2010, but
it's just not true. The OS takes care of most device diversity just like OSs
have for decades. It's true that users are on different OS versions, more so
than iOS, meaning that you can't just assume everyone has the latest version,
but that's standard for most software. It's not like everything breaks just
because the user has a Sony phone.

Progressive enhancement, graceful degradation, and responsive design are well-
understood, time-honored, practices for dealing with different platforms and
devices. Also, Google's trick of updating Play services means older OSs now
get a bunch of upgrades anyway.

~~~
njs12345
I agree the fragmentation issue isn't anywhere near as bad as it's made out to
be in general, but..

> It's not like everything breaks just because the user has a Sony phone.

Even with Android 4+, there are still gotchas. For instance, I was recently
bitten by this compass bug: [https://groups.google.com/forum/#!msg/android-
developers/U3N...](https://groups.google.com/forum/#!msg/android-
developers/U3N9eL5BcJk/i38uZKIlbQwJ)

It'd be nice if Google put more stuff in the support library, or even put
notes about it in the docs, as they're clearly working around it in their own
Android apps..

------
w1ntermute
> the glaring truth is that most SmartPhones are still using Android 2.

Uh, what? More than 70% are running 4.0+ now[0]. This dude didn't even bother
to check the proper statistics.

0: [http://www.phonearena.com/news/New-Android-and-iOS-
fragmenta...](http://www.phonearena.com/news/New-Android-and-iOS-
fragmentation-charts-are-just-as-flawed-as-the-term_id50332)

~~~
threeseed
Actually you didn't bother to check the proper statistics. The Android numbers
come from devices accessing the Play Store.

Useful for most Western markets. Less so for many other countries.

~~~
ogreyonder
Do other markets not buy from the Play Store? Or rather, if they don't, how
would you sell your app to them anyway? It is nonsense to develop a for-profit
app tailored to people who can't buy it.

~~~
vetinari
"Other countries" == China.

In general, other countries do purchase from Play Store. Only China is an
exception, due to Google-China relations that affect all Google services
there.

Edit: "China" does not mean Hong-Kong. Hong-Kong has access to Play Store.

------
jzzskijj
Easy for me: App Store didn't approve the app because it was (apparently)
against their set of rules. In Google Play it has been for months and the user
base is constantly growing.

~~~
CodeWithCoffee
For context, what was your app? Were you aware that you would be pushing the
App Store rules?

~~~
bookwormAT
guidelines. The app store has guidelines, not rules. The decision for approval
is completely up to Apple. They can approve some dirty porn scam and feature
it if they want. Or they can disapprove an app that meets all of their
guidelines if it pleases them.

------
jklp
I think the problem is that the total market share of smartphones is a very
poor metric to gauge Android or iOS dominance.

I can't find the link, but I remember reading on HN that a large majority of
Android's market share isn't actually users who use their Android phones as a
smartphone, but instead don't really care what phone they get, so long it was
free with their plan i.e. think of the flip or candy bar phones from a few
years ago.

I think maybe a more accurate measure would be to compare iOS to the higher
end Android phones, like the S4s or the Nexus's, which I think will be a
little closer in percentages.

~~~
vetinari
Price of handset and the usage as a smartphone are two orthogonal issues.

There are ZTE Blade users that do purchase apps, and there are iPhone users
who do not use it as a smartphone, but as a fashion accessory. Your comparison
would not assess what we need there.

------
yanivs
Android development is a pain in the ass.

App Store app management (approval, updates, etc.) is a pain in the ass.

If you're building a social app then nowadays you almost MUST have both iOS &
Android out of the box otherwise you're hurting any potential network effect.

------
aaronetz
I think that for games, where the UI isn't probably going to be native, there
is no (major) reason not to develop cross-platform. Engines like Unity or
libgdx let you do just that. Other than testing, I don't see how iOS
compatibility would require significant effort over an existing working
Android game which was written with a cross-platform engine.

------
BrokenPipe
Personally I avoid iOS because of their restrictions. Investing on an iOS app
is much bigger gamble than Android because of this.

~~~
threeseed
I've built a number of iOS, Android and Blackberry apps on my own and
countless more for agencies around the world and not once had this problem.
Apple's overall policy is really quite simple. Don't use private APIs,
anything that could be considered to be anti-user or anything that is likely
to embarrass Apple publicly.

It is frustrating that you can't do all the things you would like as a
developer but infinitely less so then getting something working on 5 Android
devices only for it not to work on the other 2.

~~~
vetinari
In android, it is similar - do not use private APIs and you will be fine. Yes,
there are occassional bugs made by some vendors, but they are not showstopper,
as you implied.

And you can produce bitcoin wallets, torrent clients and other harmless apps,
that have potential to embarass Apple publicly.

------
zachlatta
We had this conversation while building our somewhat popular mobile game.
Despite being a huge fan of Android, iOS remains significantly more
profitable, especially in games.

~~~
corresation
Your game is only available on iOS, so you aren't speaking from any personally
observed metrics.

By the most recent metrics I've seen, the top 200 iOS apps pull in $18 million
a day, while the top 200 Google Play store apps pull in $12 million. iOS still
leads (courtesy of the lubrication of things like iTunes gift cards -- there
will again be a huge bump after Christmas), but is there any rational player
who looks at those numbers and thinks "Oh, I want no part of the latter"? And
note that this difference has been closing very quickly (iOS is up 20% YoY,
Android is up 242% YoY).

Which is exactly why the majority of apps are built cross-platform from the
outset. Whether using tooling that enables it easily (e.g. Unity, Titanium,
etc), or designing around abstracting from the platform.

~~~
zachlatta
We made our decisions through thorough conversations with some of the most
successful free-to-play (that's probably a major factor) developers on Android
and iOS. We're planning on making our backend platform-agnostic and then write
frontends for iOS, Android, and others though.

------
Tloewald
So basically four say iOS, one hedges, one says android first so you can get
debugging out of the way since it's easy to catch up on iOS, and one says both
at once.

~~~
wsc981
I find it funny that 1 developer advocates building for Android first, because
it's harder, while others seem to advocate iOS first, because it is easier :)

Personally I'd say go iOS first (because it's an easier platform to develop
for) and perhaps once the basics are done for the iOS app, start building the
Android app side by side. Use Xamarin to build a shared core for both iOS /
Android (think in terms of network communications, business logic, data
parsing, perhaps SQLite storage etc...)

~~~
collyw
What is considered harder about Android / easier about iOS? I haven't ever
used objective C but didn't hear very good stuff about it from people that
have used it. I know Java. Simple enough, fairly boring language.

~~~
wsc981
The best thing about Objective-C are the API's. The API's are really great (no
matter if you use them directly through Objective-C or through Xamarin's C#
layer). In my opinion the Cocoa Touch / Foundation API's are of comparable
quality as Microsoft's .NET (I love them both).

Personally I find the Android API's harder to use.

~~~
eonil
It is insulting to Cocoa to compare it to .NET. .NET framework lacks concept
of immutable container and abuses subclassing. That's enough to degrade
itself.

------
knes
Maybe up the text contrast a bit on the blog?

------
eonil
In context of _majority_ … going Android first is sane only in these cases.

(1) You are willing to take far higher initial development/maintenance cost
(for sanely working app) just to reach people with far less buying power.

(2) You need physically wired connection to user's device - no bluetooth - to
connect a device where you can't make any assumption on hardware spec.

(3) You want to write an app where AppSore explicitly prohibits - such as
spam, porn, piracy, illegal, malware, or potentially dangerous stuffs. (but
does this make sense even on Android?)

~~~
eonil
I love reason-less down-vote.

~~~
CJefferson
I downvoted you. I'll also tell you why.

There are lots of reasons to get rejected by Apple other than the reasons you
list. I haven't kept track recently but I know Apple still reject most things
which allow user development or a user-visible programming language inside an
app.

~~~
eonil
I apologize for omitting _etc._.

