One of Android's biggest criticisms over the years has been how fragmented its version distribution is at any given time. At Google I/O in May last year, Google unveiled a plan to modularize the OS and make it easier to update. Project Treble, in short, separates out the base-level Android framework from the vendor implementation so OEMs are able to release OS updates without having to wait for chipmakers to update drivers.

Faster updates should increase the distribution numbers for the latest version of Android, but Treble could also be useful for custom ROM developers, allowing generic AOSP builds ("Treble ROMs") to be installed on more phones. While devices launching with Oreo are required to support Treble, that's not the case for phones being updated to Android 8.0. Porting Treble compatibility would open up even more devices to ROM development, and it looks like someone has just managed to do it.

Using a Xiaomi Redmi Note 4, senior XDA member abhishek987 did what the likes of Nokia and OnePlus either weren't able or willing to do. I won't pretend to fully understand the technical details, but it apparently involved creating a make-shift vendor partition using space normally taken up by OEM customizations not needed for an AOSP build. With vendor Hardware Abstraction Layers (HALs) moved to this new partition, Treble was enabled and a generic system image could be booted to the Redmi Note 4.

This opens up lots of possibilities, such as installing a custom ROM like LineageOS on phones previously incapable of running it. The developer even created a guide for carrying out the whole process on a Redmi Note 4. Now that it's been done for this Xiaomi phone, developers will already be working on bringing Treble support to other devices, no doubt. And when Android P rolls around, phones with Treble support will get it much quicker, with custom ROMs also coming faster, and to more phones, than ever before.

Great, this will come handy when Xiaomi stops support for the Note 4 in 5 years or so :)

AdamH

Lol, I don't know if it's sarcasm but it's already unsupported. There won't be official Oreo for Note 4.

Testraindrop

Says who?

Anyway even so, compared to some Pixel devices, even the 2012 Mi2 received security and MIUI updates, so I guess the Note 4x will be treated like this as well.

AdamH

I wouldn't say MIUI updates are support. They mostly only update MIUI stock apps which is not support for a device.

Brophen

The outlook for treble is really bright at the moment. Now once most Android devices support Treble, Google should sneak in a "switch to Android One" option in developer settings. Boom, goodbye fragmentation

Brophen

Then OEMs will complain that too many users switch to Android One and don't get to use their special customizations. Google will reply "Soo upload your themes and apps to the Play Store"

"did what the likes of Nokia and OnePlus either weren't able or willing to do"
OnePlus said it won't be doing it because there is a risk of bricking devices. A Pro user will manage to unbrick and fix, but normal users will get mad and start flaming OnePlus with yet another mistake for its users...

Brophen

And in this case the devs were able to utilize an unused partition (as a result of switching to AOSP ), it's unlikely Nokia or OnePlus would have an unused partition

Rami

if they want they can change partition sizes.

Do you remember the HTC HD2, devs were able to change every single aspect in it: partitions, loaders, roms, recovery. IIRC they even had the partition resizing ability done on the device itself without the need for a PC.

EarlyMon

Nokia has locked bootloaders. No custom roms coming via Treble in any case.

The ability to run the AOSP test rom without modification by manufacturers is there for manufacturers to certify that they conform to system update requirements - and nothing more.

Phones with unlocked bootloaders and a healthy dev community will see faster time to first bootable rom.

The T in TANSTAAFL does not stand for Treble - there ain't no such thing as a free lunch.

SetiroN

I don't think you understand how treble works. Or you're just trying to downplay a very cool technology to look edgy and alternative.

There's a community made image that boots on any treble phone (provided the bootloader is unlocked, of course).

Same image, *any* phone.

And *everything* works, because the hardware abstraction layer for every device stays in a partition that remains untouched. The OS talks to the HAL partition for any hardware call and it just works like in the original manufacturer's installation.

EarlyMon

I understand completely what Treble is.

I also understand what it is not.

My comments come directly from Google - not wishful thinking and the new blog babbling by people who don't know what they are talking about.

Let's start with the device tree. If you do not know what a device tree is or why this is a big deal, go ahead and ask.

Let's talk about the hardware abstraction layer and it's new form and relationship with the generic system.

You are correct - aside from the device tree you left off - that any hardware needs routing from straight AOSP will be in that allocation, away from the standard code. Safe. Works for everyone.

However you conveniently failed to point out that manufacturers can - and absolutely will - safely move their private methods to the same volume.

AOSP code is not going to magically attach to any of that That will require work by devs sorting it out, same as it ever was.

While the howler monkies are screeching out a game of "I've got you now!" over the big mystery of why the big players are rolling slow on Treble (conspiracy alert, they don't want you to upgrade) - the real and really obvious reason for the delay is the checkout time for making as much as possible private and pass the Treble requirement.

Treble is very cool. I like it because it's solid engineering and I know how it works.

You are correct that one of us is talking out of his ass without a clue trying to sound edgy but it's not me. It's the guy who read about the wonder rom and recently learned how to spell HAL for the first time ever.

SetiroN

I certainly wasn't acting edgy.

You instead, once again with all your know-it-all "do you know what a device tree is? go ask at a conference", (while showing off that you know what a KERNEL DEVICE TREE is, how incredibly smart), look like a sad, lonely social reject.

Up to this point every single treble device, including the historically extremely closed up huaweis, work with the same image.
The exact same image, and every hardware device works properly.
There's no need to branch a kernel tree because the stock kernel can interface to AOSP through the treble HAL just fine.

So while it would be fair to raise doubts that every single phone is going to work, most probably will, and your attitude is unwarranted.

What you're doing is simply acting like a man child on an internet forum, showing off extremely basic software knowledge while acting like a smartass.

EarlyMon

Repeating what you said in the first place in no way rebuts the points I've made.

Since most of it continues to escape you, let's focus on what you do understand.

"So while it would be fair to raise doubts that every single phone is going to work, most probably will, the way you're doing it, with your ridiculous attitude, is unwarranted."

^ Right there.

It is fair after all to raise doubts that every single phone is going to work.

That's all I said in the first place. TANSTAAFL

Look at your first reaction to me and look at the article I was responding to.

You've gone from explaining how the universal rom is perfect to perhaps it will only be almost perfect - but you don't like how I said it.

That conference was a link to the slides from a Google engineer working on Treble. Brilliant comeback for my providing a definitive source for you.

A+ for consistency on shooting the messenger. Bonus points for the correct spelling of HAL, too. You've really got that one down. Well done, you.

There's a very good reason why I keep software explanations simple. Thank you for pointing out that for some people such as yourself, it needs to be even simpler - and nice, with yellow moons, pink hearts and green clovers.

SetiroN

Jesus christ, you certainly are one pompous social reject.

EarlyMon

Yes, exactly. Every time you can't comprehend what was written, the author is a pompous social reject and it's ok to change the written word to suit you. It's impossible for you to have read anything incorrectly even when you end frolicking around until you come to the same conclusion that you originally bitched about.

Demonize away, it's no skin off of my nose.

When you stop being angry at yourself, the whole world is going to change for you. Good luck with that.

SetiroN

Sure. Keep trying to change the narrative.

"Unlocked bootloader and AOSP immediately available? Don't expect everything to work. Maybe ever."
That's plain bullshit. You were called out for it and you tried to spew some moronic, baseless argument with a laughable tone of superiority.

"Let's start with the device tree. If you do not know what a device tree is or why this is a big deal, go ahead and ask."
You literally mentioned something extremely basic with the most pompous and condescending tone of superiority in the world, as if it was some ethereal thing that people had to build from the ground up for treble to be useable, and only you knew knew what it was, while failing to realise it is readily available in compiled form for everyone to use AS-IS out of the box, until now without issue while retaining 100% functionality, as well as eventually modify in case of necessity.

You're the one who has been bitching and talking out of his ass the whole time, while telling me I was doing so. I haven't read anything incorrectly, you're a condescending dick.

Look, I'm also mad at OnePlus for their decision, but it's fairly obvious that there's no technical problem adding Treble as an update, OP (IMO) decided that to add Treble in an update was just too much work to get it running reliably. It's unlikely they'll change that decision, but also likely that their next phone will ship with Oreo, so there move is as it was before?