User: Password:
|
|
Subscribe / Log in / New account

A look at CyanogenMod 11M1

LWN.net needs you!

Without subscribers, LWN would simply not exist. Please consider signing up for a subscription and helping to keep LWN publishing

By Jonathan Corbet
December 11, 2013
It has been a year since our last look at a CyanogenMod release. So when the project announced the availability CyanogenMod 11M1 — the first of the CM 11.0 experimental builds — your editor did not hesitate to dedicate a handset to the cause. After all, what could possibly go wrong? It turns out that a few things could, but CM11 appears to be on track to be another solid release regardless.

There are some real advantages to owning a Google Nexus device — a Nexus 4 handset in this case. There is no need to "root" it or otherwise coerce the hardware to allow the installation of alternative software; connecting the device to a Linux machine and running:

    fastboot oem unlock

will do the trick. Of course, unlocking the phone in this manner wipes all user data, meaning that it's best done at the outset with a new device, but, if one plans to install a new operating system anyway, a full wipe is already in the cards. Once that's done, the usual install of the ClockworkMod recovery image is called for, followed by the installation of the CyanogenMod image itself. In your editor's case, this process rendered the phone unbootable the first time through, necessitating a return to the stock Android image before the second, successful attempt.

Incidentally, Google's posting of the factory images for its devices is a nice habit; it turns experimenting with those devices into a low-risk affair.

A new CyanogenMod installation (with the separate addition of the proprietary Google applications) takes the user through the usual Google startup routine. It did not, however, automatically install the user's backed-up set of of apps the way a new stock Android installation does. It also evidently was unable to obtain the local wireless network password from Google, despite presenting the usual checkbox to allow it to back up such passwords to Google's servers.

The next step is new since last year (though not new with 11.0): the user is prompted to set up an account with CyanogenMod itself. This account exists for now to facilitate the "find my phone" and remote wipe functionalities. Unfortunately, neither function worked. The CyanogenMod [Launcher dialog] "accounts" page showed a "last seen" time from the past and reported that it was unable to establish a connection to the device. Somehow, the phone was failing to communicate with the CyanogenMod mothership, despite having good connectivity otherwise.

Once the preliminaries were done, the phone asked, with no further explanation, whether it should run "Launcher" or "Launcher3." The choice was presented with the usual "just once" and "always" options; as long as one picks "just once," that question will be repeated every time the home screen is displayed. While trying to figure out how to choose, your editor stumbled across this appalling list of Android launchers; evidently the state of the art in launcher technology is so bad that we need more than sixty of them. In the end, either of the two offered by CyanogenMod 11 seemed fine, so your editor settled on Launcher3.

[LED color tweaker] CyanogenMod's tendency toward lots of configuration options has not changed in the last year. There are few aspects of the device's behavior that cannot be tweaked at will. If you want to control how loudly the phone rings after 8:00PM, or which options appear in the quick settings menu, or which sound is played when the screen locks, or the intensity of the phone's vibration, or how many icons appear in the bottom-of-screen dock, or the appearance of the battery icon, or the color and pulsation period of the notification LED, those options (and more) are available. The proliferation of options can be daunting, but, for those who like to customize their environments, it doesn't take that long to find the one option that cannot be done without.

Beyond configuration options, there are a number of features that are unique to CyanogenMod. The phone can be configured to ring initially at a low volume, getting louder the longer a call remains unanswered. The "Voice+" feature enables any messaging app to send SMS messages with the Google Voice service. There is a log of which applications have been requesting location information. "Profiles" allow the collection of a wide range of configuration options into sets; changing between profiles can be done [Permissions tweaking] manually or automatically via a set of "triggers." "Torch" functionality is built into the quick settings screen, eliminating the need for a separate flashlight app. And so on.

One of the more significant CyanogenMod features must be Privacy Guard (formerly incognito mode). In its simpler mode, it can be used to prevent apps from accessing personal information. When an app has been blocked with Privacy Guard, the contact list, phone history, and web browsing history appear to be empty, while GPS is presented as being disabled (regardless of its actual state). In the "advanced" mode, Privacy Guard can disable individual permissions for specific apps, as well as reporting on when those permissions were last used. This mode is, in fact, an interface to the "AppOps" functionality introduced in Android 4.3; on stock Android phones, though, this feature is not available without the installation of an app to expose it.

In summary, CyanogenMod remains an interesting variation of Android for those willing to go through the trouble of installing and configuring it. It provides more functionality, more control over the device and one's personal information, and an upgrade path for devices that are no longer supported by their manufacturers. That much has not changed in a long time.

The most significant thing about the 11M1 release, arguably, is that it is based on the Android 4.4 "KitKat" release, less than one month after KitKat was first shipped. That suggests that the Google Android Open Source Project (AOSP) is getting the code out quickly; the worries that things could falter after Jean-Baptiste Queru's departure from the project have proved unfounded so far. The CyanogenMod project is also getting faster at integrating AOSP releases into releases of its own, at least for hardware that is already well supported by AOSP. So CyanogenMod users — those willing to run test releases, at least — can have the best of both worlds: current Android code with CyanogenMod enhancements.


(Log in to post comments)

A look at CyanogenMod 11M1

Posted Dec 12, 2013 11:43 UTC (Thu) by NAR (subscriber, #1313) [Link]

The phone can be configured to ring initially at a low volume, getting louder the longer a call remains unanswered.

I might misunderstand this, but mobile phones generally had the option to set ring volume to "increase" for ages...

A look at CyanogenMod 11M1

Posted Dec 12, 2013 12:14 UTC (Thu) by BlueLightning (subscriber, #38978) [Link]

Right, I had that on my first Nokia phone years ago.

On a related note, perhaps I've just missed the option, but what I have found missing in Android is the ability to give me a regular audible reminder when I haven't responded to a missed call / text. If I don't hear my phone ringing while it's in my pocket or when I step away from it, what usually happens is I won't notice I received anything for hours, which is not really ideal. (My phone does have an LED that blinks under these conditions but it's buried under the speaker grille and thus you can only see it at certain angles.)

A look at CyanogenMod 11M1

Posted Dec 12, 2013 19:50 UTC (Thu) by sumC (guest, #1262) [Link]

Yes, had it on all my Nokia phones (Symbian and dumb phones) but on my Galaxy S3 with latest stock firmware the option isn't there...

A look at CyanogenMod 11M1

Posted Dec 13, 2013 16:29 UTC (Fri) by jafo (subscriber, #8892) [Link]

I've used an app called "Missed Call Reminder" that will regularly remind you that there is a call or SMS you missed. A wonderful thing. The one I'm using is by "Andromax Development", and I'm not associated with them other than as a happy user.

Sean

A look at CyanogenMod 11M1

Posted Dec 20, 2013 23:15 UTC (Fri) by JanC_ (guest, #34940) [Link]

You people obviously don't remember the times back when most people didn't even have an answering machine, and it was up to the caller to get through at a time when the callee is around... Or maybe you worry too much. :p

A look at CyanogenMod 11M1

Posted Dec 21, 2013 13:17 UTC (Sat) by mathstuf (subscriber, #69389) [Link]

The transition that happened is that phone numbers are tied to people, not a location. It is reasonable that a location does not have the ability to answer a call. Now that people are expected to be available 24/7 (well, sleep is usually acceptable), not answering your phone now evokes "OMG, what happened to them?" thoughts in certain people.

A look at CyanogenMod 11M1

Posted Jan 13, 2014 22:05 UTC (Mon) by ThinkRob (subscriber, #64513) [Link]

Sometimes it's easier to fix that bug with the people than with the phones. Plus, once it's fixed the solution works across any phone you might get. ;)

A look at CyanogenMod 11M1

Posted Dec 14, 2013 9:13 UTC (Sat) by ttonino (subscriber, #4073) [Link]

And I hated that feature... colleagues thought it a good idea, but when their phone went off they always thought it was not theirs.. until the volume went up. Annoying, to say the least.

That had also to to with the jingle repeating very quickly and identical over phones. Perhaps it is a better feature to have of the ringtone is a song that is specific to the user.

A look at CyanogenMod 11M1

Posted Dec 14, 2013 13:23 UTC (Sat) by mpr22 (subscriber, #60784) [Link]

Default ringtones that sound like actual ringing would be a big win. Those are much, much less annoying than some terrible piece of cheap jingle music.

A look at CyanogenMod 11M1

Posted Dec 17, 2013 10:59 UTC (Tue) by cesarb (subscriber, #6266) [Link]

Obligatory: https://xkcd.com/479/

A look at CyanogenMod 11M1

Posted Dec 17, 2013 11:22 UTC (Tue) by hummassa (subscriber, #307) [Link]

Four words for you:

Doctor Who Theme Song

:)

Seriously, those of us who work on open floors NEED to have an unique phone ring. Especially if you are as neurotic as I am about people that let their phone ringing ad infinitum... don't be that person!...

A look at CyanogenMod 11M1

Posted Dec 17, 2013 21:33 UTC (Tue) by dlang (subscriber, #313) [Link]

This is actually one of the 'killer applications' of having a smart watch, (in my case a pebble), when my phone rings my watch vibrates so I know it's my phone.

A look at CyanogenMod 11M1

Posted Dec 18, 2013 9:48 UTC (Wed) by anselm (subscriber, #2796) [Link]

Righto. This is a major hassle at trade fairs where (a) everybody seems to have the same ring tone, and (b) the general noise level can be so high that it is difficult to notice your phone ringing if it doesn't have direct skin contact.

A look at CyanogenMod 11M1

Posted Dec 18, 2013 15:40 UTC (Wed) by mathstuf (subscriber, #69389) [Link]

I'd just leave it on vibrate. If I'm at a trade show, why would I want to waste my time there on the phone[1]? If I miss it; I miss it.

[1]One thing I really dislike with phones these days is the "oh no, they didn't answer; what's wrong" reaction you tend to get versus the "oh, they're not home right now" from when numbers were a place, not a person. I also dislike how there's always that sense of urgency with phones as if the interruption is all of a sudden instantly more important than anything else you might be doing. But whatever, I'm a grumpy oddball :P .

A look at CyanogenMod 11M1

Posted Dec 12, 2013 16:04 UTC (Thu) by kpfleming (subscriber, #23250) [Link]

By the way, the proper answer to 'which sound should be played when the screen locks' is *no sound*.

Privacy

Posted Dec 12, 2013 19:50 UTC (Thu) by vdanjean (subscriber, #1552) [Link]

I install CyanogenMod on my devices for a few years. But, after downloading it, I always patch the image (with autopatcher2) in order to get OpenPDroid (PDroid 1 when I started). It seems a must-have if you want to restrict access to personal data to various application. The Privacy Gard covers less features that OpenPDroid.

A look at CyanogenMod 11M1

Posted Dec 29, 2013 6:04 UTC (Sun) by thedevil (guest, #32913) [Link]

"There are some real advantages to owning a Google Nexus device — a Nexus
4 handset in this case. There is no need to 'root' it or otherwise
coerce the hardware to allow the installation of alternative software;
connecting the device to a Linux machine and running:

fastboot oem unlock

will do the trick."

I'm afraid I don't understand. Connect how? With micro USB? When I do
that with my Nexus 8 tablet, all I can do is choose between "Connect as
camera", which I suppose means MTP, and "Charge".

The only way I've ever been able to make them communicate is over the
WiFi, with a SSH server on the Linux host and AndFTP or similar app on
the tablet.

A look at CyanogenMod 11M1

Posted Dec 29, 2013 11:01 UTC (Sun) by Fowl (subscriber, #65667) [Link]

You boot the phone into "fastboot" (early stage bootloader) by holding volume down and power during boot.

Or you can enable USB debugging in settings and issue a command: http://wiki.cyanogenmod.org/w/Install_CM_for_mako

A look at CyanogenMod 11M1

Posted Dec 29, 2013 15:39 UTC (Sun) by khim (subscriber, #9252) [Link]

When I do that with my Nexus 8 tablet, all I can do is choose between "Connect as camera", which I suppose means MTP, and "Charge".

Hmm... Nexus 8 is obviously have come from some alternate reality (or perhaps from the future?) thus we can not be 100% sure it behaves like other Nexus devices. This being said with most devices you can only root/reflash/etc if you boot it in special "recovery mode" (and this is good: device which can be easily overwritten by any malicious changer will not be very practical).


Copyright © 2013, Eklektix, Inc.
This article may be redistributed under the terms of the Creative Commons CC BY-SA 4.0 license
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds