Possibly one of the best if not the best explanation of what the difference is between Android and iOS concerning the programming arena is in this article:
People should look at Android more in the terms of PC gaming while iOS is more like console. With iOS everything is set with the hardware and developers program for that hardware. With PC gaming, it is a fairly open range so the newest games require (for the most part) newer hardware.
In that same article you’ll read about a known developer, Popcap Games, explaining the difficulty of programming games on Android for this reason.
Choice is good, don’t get me wrong, but too much choice can lead to problems. In the programming arena it is much easier when you know what your limitations are for both hardware and software. On iOS, you pretty much know exactly what you can do and more important what you cannot do. For Android it’s a completely different story. With so much choice of smartphone out there, it’s not exactly the easiest thing to program an app that will work on all of them.
If you’ve been entertaining the idea of programming an app for a smartphone, iOS is the easier of the two platforms to program for. I’m not saying iOS is better. Just easier.
Does this also mean Android is the better choice for the user concerning hack-ability? Absolutely. Android gives the user more choice, but at the same time is a rather large drawback from the programmer’s point of view.

Like what you read?
If so, please join over 28,000 people who receive our exclusive weekly newsletter and computer tips, and get FREE COPIES of 5 eBooks we created, as our gift to you for subscribing. Just enter your name and email below:



Android
Pros:
Excellent graphics capabilities
Multi-touch and accelerometer support
Cons:
Very poor web game support
Very fragmented OS
Apple iOS
Pros:
Multi-touch and accelerometer support
Cons:
No flash support
Less free options
Fewer hardware options