the answer is super simple. to develop for iPhone is as simple as developing one app. Android is horribly fragmented and getting worse, and that results in the need for many versions of the app, just within the Android ecosystem. the fact that it's "open" results in many versions for different phones and manufacturers since manufacturers are convinced they can "improve" the OS with some crap skin over the top. i am also no techie (maybe a little), but any developer will tell you the same. and before the flame wars begin, i harbor no ill will toward any platform. i have used Android and been impressed, even if it is not my personal choice.
This isn't true of just Android. It's also true of Apple. 3GS does not have full support for iOS5 and its iOS4 support was limited. Just about all current generation of handsets can (and are) running 2.3.4 which just updated to 2.3.6. Fragmentation, if anything, is improving. When the technology gets too old to support the newest platform, the user will update to a newer handset. But this is the same with Apple. My 3GS won't support iOS5 and thus, I'm required to update to a 4 or 4S when I want apps that are only supported by iOS5 and beyond.
Developers aren't really worried about supporting by sub 2.1 Android devices nor are developers concerned with iOS3.