Right now the overwhelming majority of Android phones have 320x480 (iPhoney) resolution or 480x800 or 480x854 (Droid). That's just two densities and really only two sets of art assets to program for. iPhone will soon have two densities and iPad, which is really neither better nor worse. iPhone apps are easily targeted at a particular resolution with interface Builder while Android apps have a cumbersome and ugly system of trying to achieve resolution independent layout that most developers don't understand or use correctly. There's no saying what will happen to Interface Builder when it faces the challenges Android set itself with varied device standards.
But for now iPhone has a significant advantage in ease of development here.
On the plus side for Android now is that higher density resolution makes websites a pleasure unimaginable in my iPhone. On the minus side, I keep getting user requests to support their trackballs and other exotic hardware.
It just feels like a very fractured ecosystem. I hate developing for a platform that makes it feel like there are a lot of unknowns - how many test phones should I need to keep around if developing on Android? I know that it should be only 1, but is that really the case? How long will that remain the case for?
Maybe wishing for "the" canonical Android phone is the wrong approach; but it would be nice if Google came out with some hardware guidelines that said "You can at least expect to have these things be true on every Android device."
I agree, both as a user and as a programmer, that the mess with Android 1.6 sticking around for essentially political reasons needs to improve fast. Minimal specs are nice, although they will necessarily change as the time progresses, and you will have to make a cut-off yourself. Support only Android phones released in the past two years (as an example, obviously not a useful guideline right now) and you will know what your lowest common denominator is.
On the other hand, even Apple's halcyon days of single-device uniformity are coming to an end. You now have two resolutions in iPhone OS to deal with, and if rumours are true, you'll have a third one in June (though that one's less of an issue since doubling should work acceptably). OSes 3.2 and 4.0 force you to consider both hardware and software keyboards. The iPhone 3G has less RAM available to an app than the 3GS and the iPad. CPU speeds are different on every release and I believe graphics performance differs too. New hardware features have been introduced that you have to check for. Between June and November-ish, you'll have to support 3.2 for iPad and 4.0 for iPhone (and 3.0 for older iPhones, if you even want to).