From a developer perspective, it's pretty simple. If you write the same app on iOS and Android, you make more money from iOS. Not a bit more, a LOT more. You don't have unlimited resources in most cases, so you focus your effort on where the most reward is - and you end up either writing for iOS only, or writing for both (and often still putting more effort into the iOS versions).
So basically if you're going to write a serious app that takes a lot of time and effort, in most cases you write it for iOS. You might consider an android port as well, or add one later. That means that most of the time the best apps appear either on iOS only, iOS first, or on both. Android first/only is rare.
The flip side to that is a bit more complicated. Some apps aren't possible on iOS because of apple's restrictions. For some of the apps I've considered writing, the only viable option is android. Some developers love open source and go with android for that reason. Others look at market share numbers and think android is obviously the way to go (I know people who've done this, then tried an iOS port of their app.. and switched platform fast!) Also, the laxity of the android market rules means you can quite easily sell "spam" apps (make a simple app, upload a hundred nearly-identical copies with different names - giving you huge exposure for minimal work, something that's very hard on iOS). You can sell utterly pointless apps, such as an app that just sets a wallpaper picture. Or even malware, if that's your thing. Take a look through the darker corners of the android market and you'll see what I mean: masses of junk apps, blatant copyright infringement, totally misleading descriptions, all sorts. These things really swell up the android app store numbers unfortunately - and it's why people say the app store has much higher quality content.
There are other reasons devs pick iOS too:
- Better development tools (although buying a mac is an expensive start for a small dev trying their luck).
- Easier sales. The app store works really well on the whole - it's easy to find the best apps, and easy to buy them. This isn't always the case on android.
- Support. It's pretty easy to support an iOS app. There's only a few (very similar) devices, most of them have a pretty up-to-date OS, and there are few problems. On android? 100s of devices. Different CPUs, GPUs, memory, storage, screen size, screen shape even! Making an app that works everywhere is hard. Then you have the OS: lots of versions with big performance and feature differences. Most devices only get a couple (if that) of updates, so you have to support a wide range. Your app is pretty unlikely to work everywhere, and you're going to get a lot of support requests, eating up your time and budget. There are issues with the market place too, meaning a lot of customers can't get the app installed. And did I mention that there are multiple app stores on android? It's a nightmare!
If you take all that together you get a good picture of the differences: iOS is pretty easy to dev for, easy to sell apps on, and will give you the most profits. Android is pretty hard to develop for (especially for anything complex like a high-end game), not so easy to sell on, and less profitable. Most devs want to support both of course, but in practice you usually have to focus your efforts, and iOS is the obvious choice.