I bought myself the first generation iPhone about 8 days after it came out, and have followed the upgrade path (getting the 3G and 3Gs as soon as they were available) clear up until about a week and a half ago, when I jumped ship from AT&T. I love the iPhone. Sure, there are some things that bother me about it, but it really was good to me. Especially now, that a lot of the features I was missing in a phone were suddenly there (copy & paste, MMS, etc).
Everything was great until I moved from SLC to Seattle, where my data plan took a horrible turn for the worst. Even with full bars, I could rarely access webpages, post to twitter, read my headlines on facebook, or send an email. AT&T was less than helpful, asking me to "restore" my iPhone to factory settings, which didn't do much for me at all. Living in Utah, where AT&T is grand, I really didn't ever get the reports I read about their service being poor (here's an example). Now I do.
I flew back to Utah about a week before Thanksgiving to spend the holiday with my family. Whoop, suddenly my data service works again! A couple of my friends had picked up a Motorola Droid (and thus, Verizon) recently, one of them even coming from an iPhone. Both of them said they liked it. One of them (the one that switched from an iPhone) was actually in Seattle that week for the MLS cup, and said the Verizon coverage in the city was great. So, I jumped on the bandwagon, and purchased a Droid.
Being an iPhone/AT&T user for 3 1/2 years jumping to the Droid/Verizon has been a little rough for me. Now, while I realize that a week and a half is a pretty short time to develop a great opinion of the Droid, I'm pretty sure I've got a fairly good grasp of it. Here are the pros and the cons for a user switching from the iPhone to a Droid - I'm listing the cons first since I'm sure those will be the ones people will want to look at first if they are considering the change:
- Verizon's Visual voicemail app pales in comparison to the one provided by Apple/AT&T. Here's why:
- Constant notifications that a connection could not be made to the visual voicemail service. I get one each time I boot up the phone - I assume this is because the background service of the app starts before the network connection is made. I also get them randomly througought the this day.
- The service costs $2.99
- You cannot listen to or delete Visual Voicemail messages while connected to a Wireless network. If you try to do so, the application will completely shut down your wireless connection, and it won't bring it back up automatically when you're done.
- The app itself looks like it was made in 1999. The buttons/widgets/gradients are low resolution and generally look like crap. Take a look at the screenshots below and you'll see what I mean.
(Click on an image to view the full size).
- The Android API itself seems to have a lot less in the way of user interface design standards and stock icons. There's not really a common theme between different apps on the phone, let alone in the apps on available in the Android Market. The SMS has nice clean dark theme, while the Camera app appears as though it was designed to look like it was made out of brushed granite. A lot of the apps on the market have buttons with weird fonts, weird colors, and weird layout positioning. Everything on the iPhone is pretty seemless, and in most cases, has a unified design that's familiar when switching from application to application.
- Games. There are probably 10 games in the Android Market that are worth purchasing. No "Worms", no "Doom Ressurection", no "Super Monkey Ball". I think you get the point. Sure, there weren't many great games for the iPhone when the app store and SDK first arrived, but the simple fact is, Android doesn't have them now.
- You cannot surf the web and be on a phone call at the same time.
- I don't know if it's Verizon's network, or the Droid itself, but SMS messages have a hard limit of 160 characters. I know that this is the SMS standard, but somehow the iPhone gets around it. Whether it pieces multiple SMSes together when recieving, or it splits long ones into multiple packets when delivering, it doesn't really matter. With the iPhone, you really don't need to worry about the length of your SMS.
Composing an SMS longer than 160 characters on the Droid and sending it to a contact on another network will result in the message being truncated to 160 characters. There is no automatic splitting, the contact simply will not recieve the entire message.
There's an SMS replacement app on the Android Market that'll automatically split any SMS that's longer than 160 characters, but while using it, the alerts I get from our Nagios server via Verizon's email to SMS gateway are still truncated at 160 characters, making the messages fairly useless to me. The app is also terribly ugly, suffering from UI weirdness like I described in number 2.
- No pinch to zoom in the built in browser. I have seen it on the Eris, and it even works in a 3rd party browser called "Dolphin", so it's not the hardware that's causing this limitation, but the functionality definitely is not present in the Droid's default browser.
- The Micro SD card system. You cannot store apps on the included 16GB SD card. You can only store them in the 256MB built in storage. Possibly because of security reasons? I don't know. Apps can access data on the SD card, which probably makes all of this a moot point. All of the gigantic apps I used on the iPhone consumed their space using data that could probably be downloaded to the SD card after the app is installed and launched for the first time. For instance, Doom Ressurection (50mb or so if I remember correctly), and the TomTom app (1.7GB).
- The obvious. Verizon's data network actually works where I live.
- Multitasking. I love how Android does this. I love that you can keep applications open, and switch around between them at will. Sure, the iPhone's hardware supports this, and some of Apple's apps even make use of it, but this stuff has been purposely left out of the public SDK. The only way around it is to Jailbreak.
With Android, it's more than just having multiple applications running at the same time. The SDK also allows you to create services that run in the background. Services that can use Android's cool notification system to alert you of things, which brings us to:
- The notification system. Google has created a way for applications to alert you in a non-obtrusive and super useful way. The statusbar at the top of the screen can display little icons and little blurbs of text when something of interest happens. A simple swipe of the finger and you can see a list of recent notifications; tap on one and you can switch to the application that cause the notification. The iPhone has nothing like this. It has "badges" and alert windows (which are most definitely NOT non-obtrusive).
- The keyboards. Both of them. I like the physical keyboard because, well, it's a physical keyboard. Yes, the keys are a bit cramped, but I did get used to it eventually. The software keyboard is somewhat better than the one on the iPhone. It does everything that the iPhone's does, but the autocorrection is a LOT better, simply because it provides you a list of words to choose from, and allows you to click on the one you like the most instead of always just picking one for you (though it'll do that too if you opt not to pick one).
- The Android Market (app store) policies. There basically are none. I've done a touch of iPhone development, and I can tell you that Apple will most likely NOT approve an app if it doesn't somehow help their bottom line. If you're trying to sell a service with your app, direct business to your website, etc, then good luck. If you're trying to duplicate functionality that's already present on the iPhone, even if you think you can do it better, good luck with that too.
- More on the SDK: Android allows you to replace system components. Don't like the built in software keyboard? You can replace it with one from the App store. You can route phonecalls through the Google Voice App. You can replace the SMS app entirely with a new one. You can replace the Home screen with a new one. You can cause an app to start when another one starts: for instance, the Last.FM app will start and scrobble your music automatically when you open Android's music player.
Also, you don't need to buy a Mac to write Android applications. You can write them completely for free using the operating system of your choice.
- You can download applications from random websites, bypassing the Android market all together. Find a link to a sweet app? Just click from the Android Browser and it'll download and install for you. No way in hell Apple would let this type of thing happen. How would they get any money this way?
- Mass storage capability for the SD card. You can simply mount the SD card on your computer (running any OS that supports Mass Storage) and copy your music/videos over. You aren't stuck using iTunes to get music on the phone.
Some other notes:
- ConnectBot, the SSH client on the Android platform, is quite a bit better than the options on the iphone. It supports your screen+irssi+nicklist.pl session quite nicely. It's fast. It resizes the terminal contents corretly. With the physical keyboard, your input method isn't getting in the way.
- Android lacks the super sweet TomTom app that the iPhone app store has, though it does include Google Navigation. Google navigation is fine, however, you cannot use it in areas where there is low or no signal because it transfers map data over the air as you drive. The TomTom app on the iPhone takes up about 1.7GB of your precious music space, so there's a downside to that as well.
Another thing about Google Navigation is that it doesn't automatically shut down when you get a phone call. I found this out the hard way, answering a phone call, only to have the other person get talked over by the computerized voice trying to give me driving directions.