Certainly there is something to be said about the iOS strategy -- since there's limited hardware to support, you don't need to worry about testing every configuration under the sun. Thinking about it more, it seems pretty obvious that this idea is pretty deeply ingrained into Apple's core philosophy; even the Macintosh was (and still is) run this way. On the plus side, support is more simple and you're more assured of consistent performance across the board. On the flip side, you have to assume that your users want the same cookie-cutter device that everyone else wants. 3.5" screen too small? Too bad. Hell, until 2 months ago it was impossible to even get the iPhone on a decent carrier thanks to the lack of CDMA radio. And I haven't even begun to talk about the process of getting an application through the store approval process.
Leaning more towards the PC side of the Mac-vs-PC analogy I've been somewhat following so far, Android is free of just about all the restrictions placed on iPhone users and developers. This freedom has boosted Android to the head of the market, thanks in great part to the enormous amount of choice that it gives users in both hardware and software. Choose a phone with a keyboard or without. Choose a large screen or a small screen, or something that fits perfectly in between. Choose a low-horsepower model with great battery life, or a sparkly new dual-core 1.5 GHz model that'll suck your battery dry in half a day. Choose a carrier that best suits you; don't worry, they all have Android options. Choose what your home screen looks like, choose what your application chooser looks like, choose what virtual keyboard you want. The keyword is choice.
If you listen to the tech blogs, the fragmentation you find in Android is so bad that everything will crash and you won't be able to use your phone to get anything done. Speaking from experience as both a user and a developer, it's all a bunch of crap. Of the many hundreds of users who have downloaded my apps, I have received just one device-specific complaint, which I was able to fix with relative ease. Developing with the API is simple and all methods are clearly marked which API versions are supported. It is up to the developer to choose which version of the API they wish to support, and the Android market automatically filters out users who are not eligible for download. Naturally, some problems are bound to occur, but these issues are typically easily resolved and are a small price to pay for the amount of choice awarded by the platform.
The articles about Android fragmentation and about how it is "destroying the platform" are simply not true, as will be proven by Android's continued success. Apple's model has it's advantages for sure, but there doesn't have to be a "winner" or a "loser" here. Let the consumer pick what they want without spreading unfounded fear, uncertainty, and doubt.