Ah, I vividly remember it. When HTC announced their “Desire HD” and “Desire Z” phones, they also showed off a custom-built offline caching system for the Google Maps application. Surprise surprise, now it’s in the official free Maps release, custom-built by Google. Sort of shows off why it’s a bad idea to replace core Android apps with your own proprietary ones, doesn’t it?
Rumour has it we’ll know all about the look and features of the next version of Android, codenamed Gingerbread, as early as next week.
Which makes it time for me to round up what’s good, what’s bad and desperately needs fixing with Android 2.2 (Froyo). Because Android, as much as I completely adore it, has some serious issues which I believe will only get worse unless Google makes some structural, architectural and political changes to the platform. To put it shortly, this android is suffering not only from intricate technical issues (that can not be solved by an oilbath), but a full blown identity crisis.
Did I mention I love Android? I do. I love that it’s so completely easy to set up calendar, email and contacts sync by just signing in. I love that every app on the phone can and will automatically sync in the background. I love that when there are system updates I get a notification, and that I can then go on to update the phone over the air, without ever connecting to a computer.
Mostly, I love the notification system — the ubiquitous bar along the top of the screen which literally serves as a tray for email alerts, calendar appointments and even tells you if Skype is running. Then of course, Google Listen, which automatically downloads my podcasts so that I can listen to a new Macbreak Weekly every wednesday on my way to work. Recently I’ve learned to love the wireless hotspot capabilities, which allows the girlfriend to check her email on her wi-fi iPad, even when there really is no wi-fi nearby.
When Android works for me, it’s blissfully and outrageously delightful.
When Android goes bad on me, it fails to kill rogue apps that reside in the background using power yet providing no clear exit strategy (Skype, for instance). When it’s really bad, it’s so open and liberal that it provides every other app the ability to run at startup, on a change in connectivity, or even after startup, pretty much respawning itself with no lasting way to stop it from running unless you want it1, which is especially annoying when this bad egg of an app is un-uninstallable (more on that later). It quickly becomes a confusing mess.
One thing that is especially stupid, is the limits Android imposes on app data storage. No doubt due to technical reasons, Android only provides an embarrassing 256 mb storage for apps and app data. Things were slightly improved with Froyo which allowed you to move your apps from internal storage to the SD card, but app data is still stuck in those 256 mb. Which quickly fills up, since that space is used by both Gmail, Calendar and every other app you install. Once it’s full, you won’t get any new emails until you “resolve the situation”, which means clear the data from one or more apps — wiping every customization you ever did for that app, or even uninstalling apps2. Yes, this is ridiculously stupid, and no doubt why Google themselves tout that Android is not tablet ready. Amen.
But all of that is fixable. Androids multitasking, while technically impressive from the start, has continually improved — significantly with Froyo, to the point where it’s almost there. The best type of multi-tasking is the one that becomes completely invisible and completely out of mind. Google can get there by iterating. And I believe Google will fix these things. My biggest bet for Gingerbread? A sensible storage solution for Android apps and data.
What desperately needs fixing before it’s too late
The preceding pros and cons all sidestep the real issues Android faces. The fact is that Android is up against some pretty good competitors (and has been from the start). A large group of people swear by Apples iOS devices for their polished and coherent UIs and much prefer that they just work over Androids growing feature-set. On the horizon, Windows Phone 7 is set to bring a new, pretty and unified looking UI experience which may or may not work in day to day life. Common to both iOS and Windows Phone 7 is a much larger chunk of control on part of the software vendors. Apple controls operating system and devices, and while it’s a lot longer between releases compared to Android, when an iOS release is let into the wild, it’s up to each user individually to upgrade — not carriers and hardware vendors. Windows Phone 7 comes with a bunch of requirements that ensure something similar is possible on that platform. Neither of those platforms is likely to suffer from Androids fragmentation issues — the fact that some devices still run Android 1.5.
Why is this the case with Android? This is rooted deeply in the gamble on “open”. Which means Android is open source. Which means if you’re a carrier, you can take Android, pre-install a Nascar app, remove wifi tethering, and sell it to a willing mob of morons clearly unwilling to speak with their wallets. It also means you can tweak Android and install it on a television, a GPS device, a music player, a car, a fridge, a toilet or a dog collar. Which someone is likely to do. So on the one hand, by letting go of control of the Android experience, Google has instead gained a freight-train of momentum for a platform which has now grown so large that it’s impossible to ignore.
How could this possible go wrong in a marketshare sense? Actually, all Google has to do for this freight-train to derail into a flaming catastrophe is — nothing. That’s what we’ve learned from every huge company, colonial country or historical empire. Having used Android for almost a year now, I’ll peg these issues to be the biggest threats to Androids future:
- deeply rooted vendor skins and core app replacements
- no readily available driver framework such as DirectX for Android
Which I’ll go over now.
The skin thing
I’ve talked about this before, and every time HTC fans have asked me what my beef is with Android skins. Since it’s apparently not obvious, I’ve thought long and hard about it, in order to be as succinct in my explanation as possible. Here’s my attempt:
The problem with Android skins is that they extend their tendrils deeply into the operating system, making it difficult and slow for vendors to get with Googles frantic update pace. It gets worse when vendors like HTC replace core Google apps with their own branded versions. The lateness of system updates and fundamental UI difference between phone experiences, dilutes and confusing the definition of an Android phone, and slows down platform as a whole.
So to sum things up:
- I don’t mind the visuals of HTC Sense.
- I don’t mind a black menu bar.
- the lateness of updates
- the inability to choose NOT to use the vendor skin
- the replacement Browser
- the replacement Gmail
- the replacement Calendar
- the replacement Phone app
- the replacement Contacts app
- any other core app replacements
- the inability to replace these apps with their core counterparts
The essential smartphone experience is one where the core experience has to work. The core experience is about making phone calls, browsing webpages, dealing with notifications and managing contacts. Google has convinced me they can get this experience right; make it accessible. HTC hasn’t.
The next big Android release is just around the corner, symbolized by the arrival of a giant gingerbread man on the Google campus. It’ll be interesting to see what the update brings phones, and it’ll be even more interesting to see how vendors react to it. Google’s not stupid, so I would be betting on the fact that they might de-couple core apps from their system (as we’ve already seen with Gmail), and maybe even build the core UI experience into the OS, making it impossible for vendors to actually remove. I firmly also believe the app storage situation will be resolved — Google simply has to do that in order to make a tablet.
Android is in trouble, and its openness is part of it. But Google has a single ace up their sleeve, one which might let them have the best of the open and closed worlds. They control access to the official Android Market, and unless your Android phone is up to snuff, you might not get access. Since consumers are unwilling to punish Samsung, HTC and Motorola, perhaps it’s time Google does.
- While this has actually been the case for a while, it’s become especially evident after Google killed task-killers with Froyo – yep, the infamous task-killers no longer work — which means an autostarting app is going to bug you incessantly. Already there are apps such as Autostarts which help you disable these “self-healing” apps, but these apps require “root” access, making it inaccessible for the 99%. ↑
- For a taster of this stupidity, please peruse Lifehackers article on how to clear space. ↑
The Desire is HTCs current european flagship Android phone. Its hardware specs are pretty much the same as those of the Google Nexus One phone, except it’s got physical Android buttons and an optical trackpad. In addition to this, the Desire has HTCs “Sense” UI, a skin that lies on top of the Android operating system.
I’m not going to lie, I loathe HTC Sense. These days, Android is riding a rocket to stardom, soon surpassing iPhone as the number one smartphone platform. A rising number of people are going to want an “Android phone”. Unfortunately, they can’t have it, because custom Android experiences like HTC Sense exist1. Sense brings you a black Android interface that features a flipping number clock up front, and a number of “social” widgets, such as “Friendstream”. If only it stopped there, I believe I could deal with it, after all, Android users can replace their entire homescreen interface with alternatives like ADW Launcher, available from the Android Market. The problem with Sense is that it doesn’t stop there, and I will go in to more detail in a different essay, suffice to say, Sense replaces core apps with HTC specific ones, replaces your lock screen with one that unlocks in your pocket … it sinks its teeth so deep in to Android that the overall experience is diluted and diminished.
As for the hardware, while on principle I’m against the amount of buttons present, I do appreciate that they’re physical. To be fair, they’re also quite handy once you get used to them.. I find myself missing the back button on the iPad. When I want to call someone, I find it nice and quick to press the search button, type in the first letter of my contact, and then press call. Even so, I’m still opposed to their existance, as they encourage lazy app design. Another boon of having only one a home button is that hardware vendors don’t get to screw around with the order of the buttons (“Back” and “Home” have switched places, compared to the Milestone).
In more comparisons to the Milestone / DROID, the speaker really isn’t that good. It’s not as loud, nor as clear, and the sound is almost scratchy in comparison. I suppose, on the flipside, that the Desire speaker is normal, whilst the Milestone/DROID speaker is phenomenal. Even so, now that I’ve experienced how good a phone speaker can be (my usecase was listening to podcasts in my kitchen, phone in pocket), the lack of a similarly excellent speaker in the Desire detracts from the rating.
The weight and grip of the device is just right, and you’re unlikely to get scratches on this thing. Overall the hardware is very nice.
So, should you get one? To answer this, you have to ask yourself: are you going to root this phone and install a vanilla version of Android on it? If you can answer yes, well then the HTC Desire may be your dream phone! It’s easily jailbroken using Unrevoked, and easily re-flashed using Rom Manager. You’ll get your phone just like you want it!
Did that last sentence make you throw up in your mouth a little? Well in that case, you don’t want to get the HTC Desire. If you want an Android phone and you don’t want to jump through flaming hoops to get one, I’m so sorry to say that you have only three choices at the moment:
- US Motorola DROID (not Milestone or any other Droid)
- Google Nexus One
- The soon to come T-Mobile G2.
In a summary of this odd device, you get two ratings:
- If you are a nerd and you’re going to the lenghts to “fix” this phone, this is the phone you’re looking for, especially if you’re stuck in Europe.
- If you just wanted an Android phone or a phone that works, I can’t recommend the Desire, and unless you’re able to get your hands on a Droid, a Nexus One or a G2, I recommend you buy an iPhone.
- This is not HTCs fault entirely, I also blame Samsung, Motorola and all the other “skin” vendors. ↑
I can’t believe Apple is suing them for this. It’s really not worth it.
The item in question here is HTCs Sense-branded lock screen for their Android devices such as HTC Desire and HTC Legend:
The lock-screen is activated every time you put the device to sleep by clicking the power button. The next time you wake it up, the lock screen is there, waiting for your finger to swipe that grayish handle downwards, ensuring that it isn’t accidentally woken up while in your pocket. Incidentally, that’s exactly what happens.
Vanilla Android – or Google Experience devices (Moto Droid, Nexus One), as well as the iPhone, have lock screens which require you to swipe horizontally, and for some distance as opposed to the meagre centimetre which unlocks HTCs screen. On those devices, the chance that you accidentally wake up and unlock your phone in your pocket is all but non-existant, whereas it’s now happened three times on my HTC Desire. The only solution I’ve found, short of re-flashing the phone with Vanilla Android, is to enable Androids unlock pattern, for an extra layer of pocket protection.
I’m thrilled with Android, and I like the HTC Desire hardware. It is, however, becoming very clear to me that custom UIs is the scourge of Android, and HTCs Sense isn’t all you’ve heard it was. In fact, it’s not sensible at all.