One of the tech blogs I read — I forget which — put it very succinctly: If you like to tinker, Android can be very rewarding. If you just want to use it and have it work, get an iPhone.
If you’re actually interested in making a switch, know what you’re getting into. If you don’t have a significant investment in the iOS ecosystem, and don’t use any platform-exclusive apps (there are fewer of those now, and even as an iOS user I consider that a good thing) then switching will probably not be particularly difficult. If you just want an equivalent experience, Android 4.x is by all accounts pretty similar to iOS in all major areas. If you want to actually benefit from the switch, you’ll have to invest some time and effort, though.
Android is power-user friendly, but you have to do your research. Let me repeat that: YOU HAVE TO DO YOUR RESEARCH. Many Android phones which were supposed to be upgradable were later not supported for upgrade paths, officially, by either the carrier or the maker, and either of those entities could be a roadblock to upgrading. That has gotten better as Google became more Apple- (or Microsoft-) like in centralizing control in part by threatening to pull access to Google services.
The current version of Android, KitKat, will not be supported by some future and quite a few currently-available handsets. Here’s a list of those that will. This list is by no means inclusive of the hundreds of handsets from different makers out there being sold right now. Again: DO YOUR RESEARCH and have a short list of models you know you want, or you run the risk of having an inexpensive, superficially attractive, but limited model pushed on you by your carrier store.
In contrast, the iPhone 4, which was released over 4 years ago, is capable of running the current version of iOS 7, though it is not slated to receive the upcoming iOS 8. (The 4S, released in late 2011, will, however.) In general, Apple supports upgrades for much farther back than Android manufacturers do.
What’s the alternative to waiting for an official carrier/manufacturer update on an Android phone? Root it. But then YOU HAVE TO DO YOUR RESEARCH again because some phones can’t be rooted at all, and you’re also putting yourself into an unsupported state. You can be damn sure the official channels will laugh at you if you expect them to fix something you willfully broke. If you want access to future updates, iOS is the better bet, even if you’re willing to “roll your own” and deal with all the technicalities that entails.
If you’re not comfortable rooting your phone and performing self-support and troubleshooting, and/or you are not sideloading apps, you are probably not going to see much, if any benefit from switching to Android from iOS. Google Play and the iTunes store are roughly equivalent now, though many apps are iOS first, or iOS exclusive.
On the flipside, there are entire classes of apps like keyboard replacements on Android that are not currently available for iOS because of App Store rules. That may change in the future — for example, Fleksy will be available in iOS 8 when it’s released — but if there are features that you really really want that you can’t get in the Apple App Store, don’t hold your breath waiting for a change.
You’re also taking on the burden of DOING YOUR RESEARCH when it comes to downloading apps. Malware is a non-trivial problem, especially when running older versions of Android that have known security holes. Sure, if you only install apps from the Google Play store, you’re probably (probably) ok, but then you’re ceding one of the touted benefits of Android over iOS; “openness”. If you do your homework, the risks are pretty damn low, but you do have to pay a minimal amount of attention and be technically literate, if not necessarily technically savvy.