The iPhone’s success is somewhat in spite of itself. Sure, you can access all kinds of applications that do all kinds of things, and they’ve really gotten a few things right, like (IMHO) the phone interface, but some of the things it lacks are starting to become embarrassments.
For example, for what, exactly, is the bluetooth interface intended? Probably 98% of the people who even know what bluetooth is and care that the iPhone has this support want to use it almost exclusively so that they can use their bluetooth headsets. Where I live, the law forbids using a phone while driving unless you have a hands-free capability (a.k.a a bluetooth headset). Unfortunately, the iPhone does *not* meet the need here, because there are NO VOICE COMMANDS! Sure, there are some cars that will take on some of that responsibility, and there are headsets coming out that have the commands built into them, but having this built into the phone is, imo, the right way to do this. I shouldn’t have to be in my car, or need a particular headset to get this feature.
Also, there is no MMS support on the iPhone, and the AT&T hack to work around this limitation might actually be *worse* than just having no solution at all. MMS is used to send and receive photos (among other things, like longer text messages and even video) on your phone. Again, lots of phones have had this for several years now. What happens when someone sends a photo? Well, AT&T stores the photo somewhere, and sends you a text message with a link to a site, and a username and password to use to access the photo. The username and password are both jumbled bunches of characters, and you’re supposed to stare at this text message for an hour until you can commit it to memory, and then click the link and go log in to see the picture. You can’t *do* anything with the picture, mind you — you can look at it, and then you can close your browser. I just tell people who want to send me stuff that the iPhone doesn’t support it, because it basically doesn’t.
There are other annoyances as well, like the inability to read email in landscape view, the crippled map application (ask in the comments if you want more on that one), and the App Store closes just because you initiated an upgrade (forcing you to go back into the store manually if you, say, have more than one app to upgrade), and more!
I bought my iPhone before the 3G came out, but the 3G doesn’t address these issues either. I’ll probably get a new phone in about one year from now, and if these issues still aren’t solved, it is not likely (given the rate that competition is catching up to the other *useful* iPhone features) that I’ll get an iPhone. So if you’re thinking about developing an app for Android, do it!