Legitimizing Android ROMs with Over the Air Updates


Community developed Android ROMs have come a very long way in a short amount of time. Many people now base their hardware purchase on whether or not they will be stuck running the factory ROM on it; alternatives like CyanogenMod and AOKP are simply better than what the manufacturer shipped the hardware with.

But for all of their improvements, custom Android ROMs fall short compared to their factory counterparts in a few areas: most notably, updates. Updating the factory ROM on your device (assuming your manufacturer is kind enough to update your device…) is so simple that even the most clueless of users will always be running the latest and greatest. The official Over The Air (OTA) update process is designed for the mass market, and it works.

But with custom Android ROMs, there is very little organization on how updates are distributed or even announced. Unless you keep a close eye on forums or the ROM’s site, there is a good chance you won’t even know an update has been released. Once you do, you have to go through the usual process of finding the download, hoping the mirror hasn’t crashed, and installing the updated ROM. All of which, incidentally, you probably did on your computer rather than on the device itself.

Surely, there must be a more professional way of handling things.

ROM Manager

ROM Manager

ROM Manager is a common sight in nearly every Android ROM out there. This tool manages your installation of ClockworkMod, helps backup and restore your phone, and allows for installation and updating of ROMs right on the phone without the need for a computer.

Developers who want to submit their ROM for updates can create an account on the ClockworkMod site, and they will be uploaded to the service within 24 hours or so. Unfortunately, due to the way ROM Manager is distributed, only users who have purchased the app in the Play Store (for $5.99) will be able to see the ROMs which are stored on the ClockworkMod servers. If you want the rest of the ROM Manager userbase to see your ROM, then you will need to arrange for your own hosting.

In addition, notifications of ROM updates are only available to owners of the premium version. This severely limits the usability of ROM Manager as a legitimate OTA source, as the vast majority of users will never see an update notification.

OTA Update Center

OTA Update

OTA Update Center is a relatively new player in the field. Rather than functioning as an all-inclusive application for rooted Android ROMs like ROM Manager is, OTA Update Center (like its name implies) is designed exclusively for performing ROM updates.

The client side application, OTA Updater, is open source and completely free to use, which is an important distinction when dealing with something that ideally should be included out of the box in ROMs. All a ROM developer has to do is include the OTA Updater application in their ROM, and register with the site. They enter in the MD5 and download location for their ROM update, and the client software does the rest. Since OTA Update Center doesn’t actually store any of the ROMs, they don’t need to charge a premium fee to recoup server costs.

OTA Updater can be configured to check for ROM updates at boot, or manually by the user. It can also be configured to wipe date, cache, and Dalvik, depending on ROM and user needs.

Driving Adoption

With good options available for performing OTA updates in Android ROMs, why isn’t it more common?

This is a question better answered by ROM developers themselves, but hazarding a guess, they most likely don’t find it important for their particular userbase. They assume that anyone who is running a ROM like CyanogenMod or AOKP is savvy enough to keep tabs on the ROM’s development and update accordingly.

While that may well be true for the current crop of users, we need to be more forward thinking if community developed Android ROMs are going to move from niche to mainstream. There is absolutely no reason that the average consumer couldn’t or shouldn’t reap the benefits offered by custom Android ROMs. Once the ROM has been installed (perhaps via a more technically inclined friend), the user should be able to continue on with their device getting the newest releases of that ROM.

As someone who has setup Android ROMs on many user’s devices, I would appreciate the ability to set them free on their own, with updates being handled in a professional and reliable way. As Android ROMs become increasingly mature, this is an area of development the community should push for more vocally, so that the average consumer can enjoy the same freedoms and capability that we’ve had for so long.

About Tom Nardi

Tom is a Network Engineer with focus on GNU/Linux and open source software. He is a frequent submitter to "2600", and maintains a personal site of his projects and areas of research at: www.digifail.com .