Never forget when they spit in your face

Or, “Why Xodium will never daily Android unless Apple manages to colossally fuck up.”

Realized that I haven’t really put these thoughts to virtual paper, so what better time than now?

I had been with Android since the beginning. Close to its launch, I bought an HTC G1. My phone shipped with RC27 (which I want to say–contrary to my previous belief–is just a reference to the HTC nomenclature for their firmware, which was DRCxx, rather than meaning “Release Candidate”) which had a fun bug where everything you typed on its keyboard was also being sent to a terminal with root privileges; type “reboot” and hit enter in the Messages app, your phone will reboot. This is also how root access was achieved.

It was a great time. HTC tried to patch things up and take root away, but that was easily dodged because you could just downgrade and re-root your phone. No ECID bullshit. No locked bootloaders. ROM flashing was also figured out (which was already a thing that could be done on HTC’s Windows Mobile phones at the time) and next thing you knew you could have loads of fun with root, installing your own apps (though you didn’t need root for that), and getting Android updates even before T-Mobile and HTC sent ’em out. Some added their own little touches, too. (Hell, I still have the JesusFreke updater in my Google Play history from long ago.)

Google–at least for their own devices at the time (the ADP1, and the Google Ion, and eventually the Nexus One) leaned into the enthusiast community. Their devices weren’t restricted, you were free to tinker and do whatever the hell you wanted with them. Root? Go for it, Google ain’t going to stop you. Install something else? Hell yeah, brother!

This capability would become immensely important as time rolled on because this era was truly the Bad Era of Android updates. Manufacturers would be frequently behind on updates, if they even bothered to release them. It was all too common (Motorola, looking right at you) for manufacturers to throw a device out there and then completely forget about it. Carriers would also complicate things. It was a mess. (And in some cases, still is.)

With Android being super accepting of mods/tweaks/what have you, the community could take matters into their own hands and do what carriers and phone manufacturers wouldn’t.

We also can’t forget Andy Rubin’s iconic tweet, too.

Google mostly kept with it, releasing phones that did ship with locked bootloaders but absolutely wouldn’t get in your way if you chose to blaze your own trail. It was an era of peace and prosperity.

…until the SafetyNet attacked.

SafetyNet, or “Google spits in the face of the enthusiasts”

2015 marks the time when Google–I feel–really began trying to take Android and pushing it towards iOS. Maybe because they felt it would attract more people. I dunno.

SafetyNet, to keep it simple, is a thing that would check to see if your phone was “”compromised”” by checking for root. If your phone was rooted, any service or application that leveraged the SafetyNet API would refuse to run. Initially, this was innocent enough: It “only” locked down stuff like Google Wallet/Android Pay/Whatever They Were Calling It Back Then Because Google Can’t Pick Something And Stick With It. Some would say reasonable. I was not a fan because, well, you look across the aisle and you could jailbreak your iPhone and Apple Pay still worked. But whatever.

This was around the time Google also started putting up scary warnings if you modified your device. Previously you’d get a unlocked lock symbol on the boot screen if you had the bootloader unlocked, but now, you got a scary message warning you that the device is modified. Yeah, it could be argued that this is fine, because it informs the user that hey, you’re not using the original factory software! But It also felt like a shift in the way Google sees those of us who loved to root and ROM our devices. It felt like they saw us as a nuisance, an enemy.

Those fears eventually came true: Google opened up SafetyNet so that anyone could use it, and suddenly you had apps that really didn’t even need such a thing using it (McDonalds? Friggin McDonalds?). Worse, SafetyNet is all server-side, so even if you had found a means to bypass it (Magisk Hide, for example), it would be only a matter of time before Google updated SafetyNet to detect you (and once again break anything that uses SafetyNet’s API).

Google began quietly expanding the scope of SafetyNet. Previously it only triggered on root, but it was updated to trigger on the mere presence of an unlocked bootloader. So those of us with custom recoveries (which were far better at backing up and restoring devices, honestly) were now caught in the crossfire. Or people with custom ROMs who relied on them to keep their phones up to date, but didn’t enable root. Good show, Google. Way. to. friggin. go.

The worst part is? Google’s still doing this. To this very damn day. It isn’t enough that a whole multitude of apps are locked off due to SafetyNet (now known as Play Integrity), and that Google can just bid a server-side “fuck you” to people still playing the cat and mouse game, but now they’re blocking RCS for people on rooted devices. Could you imagine if Google straight up blocked SMS on earlier phones because you failed a Play Integrity check? Because that’s what they’re doing here.

Google didn’t even want to stop with Android, either! They wanted to bring this garbage to the web as a whole with Web Integrity. Thankfully the blowback was unanimous and fierce, but that Google would suggest such a thing is a tell of character.

I get the feeling that if Google could do so without suffering the unholy wrath of a not insignificant portion of Android users, they’d absolutely kill the sideloading option that’s been there since day one.

That’s why I carry this low-level grudge for Android. It began as something wide open, open to people to screw with it and really make it theirs. Then Google decided they’d rather it be closer to iOS and while they didn’t take away the bootloader unlocks and the potential they allow, they will punish you ridiculously hard if you even do so much as think about it. It felt like Google spit in the faces of the enthusiasts once Android became big enough to sustain itself and didn’t need “those users” anymore.

iOS might be locked off and not as open to tomfoolery, but the way I see it is the same way I saw switching from T-Mobile to Verizon: At least they’re up front about how shitty they are and they don’t try to act like they’re cool only to yell JUST KIDDING and then take the mask off.

Addendum: SafetyNet’s server-side hubris reminds me of the secondary reason I’m not a fan of Android, and that’s the absolute power that Google Play Services has over your device. Google loves their A/B testing, much like Facebook did. This combined with lots of things being behind server-side flags means that you could suddenly wake up one day and find a feature is missing that you used to use quite often, and with zero warning. Because Google was only “testing” it.

Fun example of this is right here. Read the comments for even more fun.

Correct me if I’m wrong, but far as I know whenever iOS introduces a feature, Apple can’t just yank it at will with a server-side update, far as I know. The capability is probably there, yes, but as far as I can remember, they’ve not used it. Whereas Google A/B tests stuff all the damn time and it’s not uncommon to have two people running the same software with the same phone have differing experiences. (Though, admittedly, Facebook was worse with this, I remember a time they had like four different UIs in testing at once and it felt like no one among my friends had the same UI in their Facebook apps. What a mess.)

Google doesn’t even stop at Android for this; YouTube is a good example. They’ve been “testing” a controversial new layout for the video player. I had it for the last month. Just today they rolled it back and now I have the old layout. But people on the YouTube subreddit all have differing experiences. Some say they were rolled back within days. Some within weeks. Some still have the new UI. It’s a friggin’ mess.

Google Play Services doing this kind of stuff on my phone, to me, is unacceptable.

I know, I know, there exist Android variants you can install on Pixels and the like that are de-Googled and can try to emulate Play Services for the apps that require it. But at least from observing this, the experience is miserable for someone like myself. I might be an enthusiast, yes, but when it comes to this there’s a limit for how much convenience I’m willing to give up for this, and de-Googled Android is very much over that limit for me. If you can work with it, more power to you! But I can’t.