IDG Answers is a community of experts who are passionate about technology. Ask a question or answer one below.
As an Android user myself, there are two things I look for in any new device that I intend to keep for any length of time. First, I want to make sure that it is running one of the newest versions of Android OS. For a new phone now, the oldest version I would consider is 4.0. There are some ok devices out there running Gingerbread (2.3) still being sold, but as time goes on fewer and fewer apps are going to run on older versions of Android, plus there are improvements with each generation. The other reason I insist on at least a fairly current version of Android is that I have been burned in the past on "promised" updates that never occurred. Fool me once, same on you, fool me twice...won't get fooled again, as a former President once eloquently put it.
The only other thing that I put in my top tier of importance is internal storage/memory. Yes, with Android since 2.1 (I think) you can move apps to your SD card, but that's a little misleading. Just because you move the app it doesn't mean that you moved everything to the SD card, there are still files in internal storage from that app. So even it you move every app that you can, and not all are able to be moved to the SD card, you will still be using up that finite store of internal memory. It doesn't take long to fill up, as I'm sure you know with only 512MB of internal storage for your systems applications and anything else you want to install (I looked that up, since to be honest I've never seen a Charm).
I've never owned an iPhone, so I'll have to defer to others on that front.