Stock Android and New Phones

I've had an iPhone 3GS for awhile now, and I really want to try an Android phone. The overall impression I get; however, is that 99% of phones (sans the Nexus) run crummy branded skinned versions of Android. From what I've seen stock Android, particularly Ice Cream Sandwich, is what I would really want to run if I got an Android phone. I've been looking at the HTC One X and I know that HTC has lately been providing the means to unlock the boot loader on their phones so I thought getting plain ICS on there would be easy. I went over to the XDA forums, and I was a little out of step. I clearly don't completely understand the process; I see a lot of custom ROM images for specific devices with specific tweaks etc. (I would want to get rid of Sense altogether) I'm going to keep going through the XDA forums to get a better understanding of it all, but if anyone could give me a general run down of how this works I'd appreciate it.

I'm wondering how hard it is to go to stock Android, and is it like emulation where not everything will work 100%? Is that completely phone dependent? Is there a reason I wouldn't want plain old ICS (from what I've seen it looks much nicer than all the variants)? Any questions I should be asking that I'm not?

All these questions might be answered somewhere else like the XDA forums, but from what I've seen they start in the middle and I'm at the beginning...

You want CyanogenMod, and be done with it. It's based on the Android Open Source Project (i.e. stock Android, without Google apps or customizations). I've tried a bunch of different ROMs, but CM is the most stable, the most performant, and the least full of useless cruft. Because it's stripped of the Google stuff (market, Gmail, etc) by default, you will have to add it yourself after first boot up, but it's a really simple process. Oh, by the way, CM doesn't have Google apps not because the developers of CM are dicks, but because the Google apps are closed-source. The process is fairly easy for the technically inclined (easier now for HTC phones because of the HTC-provided bootlocker).

If you are going the custom ROM root, you really can't go wrong with an HTC phone. They have the best support of the any manufacturers by the enthusiast community (Historical factoid: XDA-Developers started out as a site exclusively for HTC phones: XDA was a product line of HTC's). The Nexus One is still supported by the latest stable CyanogenMod, for example. There are still ROMs being made for the G1, as well.

Nope. In fact, there will be more choice in apps which you can install from the market, because your phone will be rooted (there are a sizable number of apps available from the market that require root).

Sense... kind of hard to describe what it is (or other OEM customizations, for that matter). They are completely binary compatible modifications to the OS. Meaning, that all Android apps will run on any OEM customized version of Android (with some political exceptions). However, they do a bit more than just skin the interface. HTC Sense, for example, adds better Exchange support through their own replacement to the Email app (there are two email apps on Android, Gmail, and Email [for all other email providers]). Sense also adds a better photo gallery, and has its own custom launcher.

If you are familiar with Linux, think of it like the difference between Ubuntu (AOSP), and then Mint (Sense), Kubuntu (MOTOBlur), Lubuntu (TouchWiz), etc. The underlying system is exactly the same, but the desktop environment is different (different bundled apps, some different system-wide features, different window manager [in the Android context, this would be equivalent to the Launcher]).

Yes. If you install CM on a Nexus phone, you will get updates slower than official releases. This is because Google launches binary releases first, then opens the source weeks to months later (perfectly acceptable practice, IMO). After the source has been released, it takes another little while for the CM debs to launch their release based on it.

If you don't have a Nexus phone, you will invariably get updates faster than official manufacturers releases.

That makes sense to me. What doesn't make sense is why all the carriers/manufacturers make their phones look like shit, but I guess that's probably a topic for another day.

Is there anything that CyanogenMod will prevent me from doing?

The customizations actually improve the experience in many cases. HTC's innovations, for example included iPhone-style copy/paste before Gingerbread got it, tap-to-focus in the camera, a much-improved camera app that is still better than stock, and various other customizations including better widgets, email and People apps etc, and even quick setting toggles in the Notification tray.

Touchwiz has also had some improvements including slide-for-brightness in the notification bar, and Blur brought comprehensive social networking support before Eclair/Froyo did.

I will be the first to admit that some of the customizations do make the OS suck (use more battery or lose performance) though.

As a Sense user, there are things I have that I take for granted. For example, the icons on the lock screen that allow me to unlock straight to my email, phone, text messages, or whatever else I want to put there. Very, very handy. Other customizations, not so much.

Most ICS-roms are still in various alpha or beta stages for most phones, so if you want ICS that is something you need to consider. The current stable version of CM is 7.1 (with 7.2 in RC) and that's based on 2.3.7 at the moment.

Thanks for all the input, it's really appreciated. I setup the android sdk last night and I've been playing around; so far it's fun to just fiddle around with. I'll probably have to use a One X a few times to decide; the Nexus S looks pretty nice out of the box too. I was originally looking at Android primarily because iPhone is so restrictive (have to sync everything under the sun with iTunes and so on), but after fooling around with the sdk a little I think I want one to tinker with.

As a Sense user, there are things I have that I take for granted. For example, the icons on the lock screen that allow me to unlock straight to my email, phone, text messages, or whatever else I want to put there. Very, very handy. Other customizations, not so much.

From what I saw of the Cyanogenmod, it lets you do that and then some... I thought the Sense ring unlock in the One X videos looked crummy just aesthetically; though, to be fair I haven't used it and that's just a cosmetic gripe.

I've thought about modding my Samsung Stratosphere. The CyanogenMod forums I've perused point to odd occurrences like: help my audio doesn't work, or help, my (fill in the blank) is boinked. It sure doesn't sound fool proof, with the added possibility of unforeseen gotchas. I can't imagine risking that brain damage with my primary biz phone. Plus CyanogenMod doesn't support all models. Yes to some flavors of Galaxy S and no to many more.

I have a Droid 2 and I was running Cyanogenmod 7 (CM7) on it for a while, but I always had little niggling problems with it. The primary issue I was having that made me go back to the original moto build was that the Wifi was screwing up left and right. Before that, I would have other little issues, random reboots, settings not sticking, etc. That's the problem when you have volunteers spending their free time to get this stuff working. I applaud them for their efforts, but they honestly just don't have the time to fix everything, so there's always issues, especially on the less supported devices.

If you really want to pick an Android phone to root, make sure you get one that has an unlockable bootloader and can have its kernel messed with. This means stay the hell away from Motorola.

My solution was to just get a Galaxy Nexus and run the actual stock version of Android as the Google developers intended and I have been extremely happy ever since.

That's the problem when you have volunteers spending their free time to get this stuff working. I applaud them for their efforts, but they honestly just don't have the time to fix everything, so there's always issues, especially on the less supported devices.

You have it backwards. There are a ton of manhours which go into OSS: probably more than proprietary software. The problem is that mobile OSS developers have very poor documentation from hardware manufacturers to work with (if the specs are published at all, in the first place), so they spend a lot of resources just figuring out how to control the hardware.

That's the problem when you have volunteers spending their free time to get this stuff working. I applaud them for their efforts, but they honestly just don't have the time to fix everything, so there's always issues, especially on the less supported devices.

You have it backwards. There are a ton of manhours which go into OSS: probably more than proprietary software. The problem is that mobile OSS developers have very poor documentation from hardware manufacturers to work with (if the specs are published at all, in the first place), so they spend a lot of resources just figuring out how to control the hardware.

The same goes for any OSS project that has to deal with proprietary hardware. Case in point is Linux graphical drivers and the big difference between OSS and proprietary drivers supplied by manufacturers such as Nvidia. OSS firmwares for mobile phones are great but it shows how important it is to choose your hardware wisely if you plan on running anything else then stock.

My solution was to just get a Galaxy Nexus and run the actual stock version of Android as the Google developers intended and I have been extremely happy ever since.

That's my next move. I've got both a Galaxy S and a Galaxy SII from Sprint. Waiting on the updates is pretty awful - utterly disgusted that the Epic 4G Touch still doesn't have ICS. I bought it because timing was important (needed to get my wife and I on the same upgrade cycle) - but when I go looking at phones in two years I've already decided on a Nexus.

That's the problem when you have volunteers spending their free time to get this stuff working. I applaud them for their efforts, but they honestly just don't have the time to fix everything, so there's always issues, especially on the less supported devices.

You have it backwards. There are a ton of manhours which go into OSS: probably more than proprietary software. The problem is that mobile OSS developers have very poor documentation from hardware manufacturers to work with (if the specs are published at all, in the first place), so they spend a lot of resources just figuring out how to control the hardware.

While I agree with you for OSS projects that are open source from the ground up, in my experience with third party ROMs, this is not the case. Some devices do have a ton of people working on them and that's great, I'm just saying that if you're going to buy a phone and one of the major factors you're taking into consideration is running a third party ROM on it, make sure it's one of the devices that actually has a lot of developers supporting it. For example, my Droid 2 has one guy working on it (on Cyanogenmod) and he doesn't have time to try to fix issues in the current release because he's working on getting ICS working on it... which is great, but it means that all I have is a ROM that is excellent when it works, but still has a major flaw in it that makes it basically unusable. I'm not saying that's always the case, but in my experience, it's pretty common, especially for devices with locked bootloaders and little to no source code sharing by the manufacturers (I'm looking at you Samsung... release the damn code for my Galaxy Tab 7 Plus!).

I'm wondering how hard it is to go to stock Android, and is it like emulation where not everything will work 100%? Is that completely phone dependent?

Probably most people have wondered exactly the same thing; at their core, there must be a basic compatibility with the hardware from first principles, and your SIM or carrier card should/could take care of the rest in terms of network connections. I can't really understand why carriers & manufacturers are obsessed with slapping widgetry and branding all over devices - if nothing else, it takes extra time to get them out of the door and making money, and then, users bitch at you for not updating them as often as possible.

The argument for it is that manufacturers using Android are trying to differentiate their devices from others. If they all used stock Android, they would have to rely on "superior" hardware design and I guess their marketing people have decided that that's not enough. Also, the carriers are the real assholes here with all of the extra garbage they throw on the devices in order to get subsidy deals with other software providers by pre-installing crippled software in the hopes that some sucker will actually buy the full product.

I'm hopeful when I see manufacturers like ASUS realize that if they spend less time fucking with the software experience, they can get their updates out faster and end up with a better product. HTC seems to be getting this as well based on what I've read about their Sense 4.0 being a much lighter addition to ICS rather than a redo of the entire UI framework. The leaked images of Motorola's ICS version for the RAZR also gives me some hope since it looks like they are using the stock ICS launcher.

Probably most people have wondered exactly the same thing; at their core, there must be a basic compatibility with the hardware from first principles, and your SIM or carrier card should/could take care of the rest in terms of network connections. I can't really understand why carriers & manufacturers are obsessed with slapping widgetry and branding all over devices - if nothing else, it takes extra time to get them out of the door and making money, and then, users bitch at you for not updating them as often as possible.

That is exactly my thinking... opcenter makes a good point that if they all released with stock software, they would only be able to differentiate based on hardware (fine with me), but it would probably dramatically reduce the number of models etc that get sold.

I'm a little concerned about reliability; I'm hearing from a lot of people around work etc. that Android is very buggy.

Yeah, let's not try something new for ourselves, and stick to the same old shit, because some random Internet guy says so*.

*you're not a random Internet guy, HellDiver, I respect your wisdom, but let him try it out and decide for himself.

If I never tried a Samsung phone for myself (two of them, in fact! One of them was even a Nexus) I never would have known to never buy another Samsung phone again (until Samsung seriously restructures how it makes phones), despite the fact that the Internet gushes about them,

Using the clean Android install on a Galaxy Nexus was much, much, much better. And to be fair to HTC, supposedly Sense on their newer devices is better, but man... sucked. (hooray for rooted devices and Cyanogenmod!)

I've had an iPhone 3GS for awhile now, and I really want to try an Android phone.

You really don't.

I had a 3G, then went to a HTC Desire, then a Moto Defy, then a Nokia feature phone, and back to a iPhone 3GS running iOS5. Jeesh, Android was a piece of crap.

Tell us how you REALLY feel.

iOS is a nice polished interface, it's easy to figure out, and if you're happy with what it provides and the devices that it's available on, then by all means, go for it.

Android gives you choices and with that comes the risk of making a bad choice and that's often picking one of the "lesser" Android devices that end up being underpowered and lack reliable software updates.

For me, since Android 2.1 (Eclair=2.1, Froyo=2.2, Gingerbread=2.3, Honeycomb=3.x, ICS=4.0), I've considered Android's interface (and I'm talking about the originally intended interface, not necessarily the various manufacturers' interpretations/abominations) to be on par or better than the iOS interface of the equivalent time period. By better, I mean that it fits better with my desired workflow (I can pick what launcher I want, I can put widgets where I want, launcher icons, etc.).

Unfortunately, the level of flexibility that it provides can (and does) contribute to UI inconsistencies and buggy applications. The upside is that, at least in my experience, these problems have decreased dramatically with each new Android release. On my Galaxy Nexus with ICS, apps very rarely crash on me and the UI is very consistent, even on 3rd party applications. Each new version of Android has provided a better SDK for developers to construct more consistent and stable applications.

This is why I wish that manufacturers would stop messing around with the UI framework. The experience on my Galaxy Nexus has been excellent and even my Droid 2 was great once I put a "clean" ROM on it (Fission ROM for a while and then Cyanogenmod).

I'm hearing from a lot of people around work etc. that Android is very buggy.

It has bugs. Like iOS. The good thing is that the bugs at least get acknowledged in Android instead of pretending that nothing is wrong.

In general I think people are hesitant to fault apple for any issues but immediately blame htc/google/samsung for every little thing in android that might go wrong.

My buddy complained about his droid incredible all the time, yet after having to get his 4th iphone replacement in 9 months it doesn't seem to bother him.

My wife's iphone used to wig out all the time, and she was on her 3rd one. Battery would drain, die, heat up, lockups, needing to reboot. Replacements didn't matter because it's an OS issue (I had similar issues on my 3GS). Eventually she had to get a brand new one, out of warranty, because it "panicked" and wouldn't exit recovery. $100 bucks to fix a purely software issue. Oh and it still randomly drains once in a while and she has to restore it to get it to stop.

Both OSes have issues, it's just a matter of what kind of issues and what you can put up with. Both of them randomly drain the battery at times, but with Android I know exactly which app is doing it. Both have apps that are great, ones that suck on that platform. iTunes is awful and helps with somethings, direct file mp3/media access rocks and is a also pain in the ass.

It really depends on how you are. iPhone was my first real smartphone experience and after a year I hated it. 2 years later I still like my Android better. You may be the opposite.

Get a cheap android, plug in your sim/switch over your plan, and give it a whirl. If you hate it, you can probably sell it for the same price.

That makes sense to me. What doesn't make sense is why all the carriers/manufacturers make their phones look like shit, but I guess that's probably a topic for another day.

Is there anything that CyanogenMod will prevent me from doing?

If you have a Virgin Mobile device, you cannot activate you phone under CM7. You need to backup, restore stock, activate, and then restore the backup if your phone for some reason needs to be reactivated.

Both have apps that are great, ones that suck on that platform. iTunes is awful and helps with somethings, direct file mp3/media access rocks and is a also pain in the ass.

What issues have you had with direct file mp3/media access? I'm interested to know because having to sync with anything is one of the biggest gripes I have with the iPhone. Just out of curiosity, on Android, can you sync media with some app in the event that you would want to? I don't, but I'm not sure why you couldn't have the option.

Sort of tangential, but in the course of looking at all the smartphones out there I've looked into Windows phone as well. I couldn't believe you had to sync it to Zune software to put media on it... I feel like I understand why Apple wants to force synching, and they're in a position to do it without too much blowback, but why Microsoft who needs to play catch-up would follow that model is beyond me.

I'd be careful of this... Last week I signed up for a pre-paid plan with T-Mobile, and got an LG Optimus T. Can't really complain about the speed of the phone, but it's severely lacking in flash. While it's got a micro SD slot, it's only got 1/2GB of flash built in. Since the OS takes up a good chunk of it, there's only 140MB free, and a lot of apps insist on being installed in the internal flash. I've already had to jettison Google Reader and a few other apps because they were taking up too much of the precious internal flash space.

I'm considering installing CM7 on it, but given the giant warning about it being an experimental build for this phone on the XDA forums I'm a bit hesitant. I'm also considering returning it and paying an extra $50 for a Samsung Exhibit II... From reviews I've seen, the Samsung is also pretty meh, but at least it's got 4GB of internal memory. Seems much more reasonable, given the limitations of where you can install apps.

Just out of curiosity, on Android, can you sync media with some app in the event that you would want to? I don't, but I'm not sure why you couldn't have the option.

I suppose, like Doubletwist that is mentioned, but I'm on Linux and I went through enough virtualbox pain to get my iphone to work, I'd rather not do it yet again for my Android that rarely needs to be plugged into anything. Actually, if anyone has any newer recommendations for dealing with syncing up music (mostly just "hey I made this list on my PC, I want my phone to have all these songs") I'd appreciate it.

The only real issues I've had is I have to work out a separate photo/video backup plan, like Dropbox, and I have to have another way to sync up/add music and videos. That being said, it's not a MAJOR issue. It absolutely 100% is better than having to wait 40 minutes to copy over one song because iTunes wants to copy all my app purchases, back up everything, and then finally copy over my 1 song.

Quote:

I'm considering installing CM7 on it, but given the giant warning about it being an experimental build for this phone on the XDA forums I'm a bit hesitant.

If you avoided experimental builds, you wouldn't have much to work with. CM releases are typically very polished when they're willing to give it to people, even in beta, so I wouldn't worry too much. You can always do a nandroid backup and go back to the way everything was.

As far as app space, people have been clever with partitioning. For the EVO 4g they've made it so you can set up a partition for apps on an SD card, even 2GB or so, that the system doesn't know is any different than the standard /data partition.

Just out of curiosity, on Android, can you sync media with some app in the event that you would want to? I don't, but I'm not sure why you couldn't have the option.

I suppose, like Doubletwist that is mentioned, but I'm on Linux and I went through enough virtualbox pain to get my iphone to work, I'd rather not do it yet again for my Android that rarely needs to be plugged into anything. Actually, if anyone has any newer recommendations for dealing with syncing up music (mostly just "hey I made this list on my PC, I want my phone to have all these songs") I'd appreciate it.

The only real issues I've had is I have to work out a separate photo/video backup plan, like Dropbox, and I have to have another way to sync up/add music and videos. That being said, it's not a MAJOR issue. It absolutely 100% is better than having to wait 40 minutes to copy over one song because iTunes wants to copy all my app purchases, back up everything, and then finally copy over my 1 song.

I like having a Google+ account and having the app installed on my phone. All my pictures and videos are automatically uploaded to my gallery. No worrying about backing those up.

Reading rumours that the new Samsung Galaxy S3 will be unveiled on May 3rd, and, that it might offer a "dual-boot" option for stock and Touchwiz-ed versions of Android.

(And as a side note, the "mystery" around the S3 is beginning to piss me off. They've have finalised the spec quite some time ago, have models in production, and will have to compete with everyone else no matter what. So why not just unveil a few shots or specs ? I somehow doubt HTC or Sony are going to re-tool and re-spec their entire current line-up in response...)