That's one of the main points of Android.
It's in Apple's DNA to really polish their software on a small number of hardware platforms. This might not be so much of an advantage when it comes to apps handling personal information. However, this advantage might be significant when it comes to games some of which have a tendency to push whatever hardware they are on.
This doesn't line up with the experience in desktop software where the the PC dominates gaming despite having a multitude of difference hardware environments.
The issue with phones is that ergonomics can make or break your app, and that is dictated entirely by fixed hardware. Do you have only a touch screen? A keyboard? keyboard + touch screen? What about physical screen size and resolution? Your application will technically run on every combination of that hardware, but the end-user experience may suffer.
Those ergonomic issues impact the end-user in a huge way. If you've ever watched someone with a Blackberry (with a trackball) use an iphone optimized website, it's usable but not as efficient as using a touch screen. There's often no way around these limitations for the end-user other than getting a new device.
Mobile devices will eventually mature and converge toward common hardware and input technologies, but until that happens cross-device work is going to be a real challenge.
Android addresses this, though, since everything runs on dalvik. A JIT would be nice if we're going to see more resource-intensive stuff.
Phones differ so much in form factor alone that you really need to be testing individually for any phone in your target market anyway. Its a huge time-sink to be sure, but you won't be flying blind.
[1] http://developer.android.com/guide/developing/tools/emulator...
For now Android is far from the J2ME scenario, let's hope it will stay that way.