Android N's under-the-hood changes might point to a new future for OS updates

We've spent the better part of a day digging into the inner workings of the initial release of the Android N Developer Preview, and we've learned a few things. The first of them is easy — this is a super-beta (if that's not a word, it needs to be) version of software that will have bugs on top of bugs. A lot of us have flashed it and are enjoying the new flavor, but you should tread lightly if you want to try on the phone you need every day. Things are broken, and some things will be more broken in the next update. This preview is for developers to start working on their apps to get them Android N-compatible, and for people who like to report bugs. It says so right on the tin.
The second thing we're seeing is the more interesting one, even though we're not entirely sure what it's all about just yet.
Big things may well be afoot for Android.
Android has a major (and not entirely incorrect) image problem when it comes to keeping devices on current software. We can argue about it, try to blame one company more than another, or pack up our ball and move to iMore. None of that helps when you have more than 1.5 billion things running Android — and few of them are running the exact same software. In the end, it's Google that has to take the heat because their name is on the product. It's a discussion that's been beaten to death and then some — and the beatings will continue.
Google knows this and is doing "stuff" under the Android hood to make it easier for the people who build phones to get it all together. And this initial Developer Preview (there will be several others before public release later this year) shows it. We don't know exactly where Google is going and what it has planned, but small changes to file structure and partitioning in the first factory device images are clues to how things might well work. We're seeing more things placed into the vendor and OEM partitions — things that can (and do) overwrite or attach to the "stock" Android versions that live in the system partition when the phone boots. And not just support libraries and kernel objects — there are full apps that are supplied by the vendor (in this case that vendor is Google) that can greatly affect how the phone operates and how you interface with it.
Imagine a world where Samsung can have its vision of Android, while keeping the deep system processes untouched.
Imagine a world where Samsung can have its vision of Android running just how it likes it, while deep system processes — like the infamous Stagefright library — are separate and untouched. That would mean that Samsung or Google could push out changes to their separate parts of the system far more easily (and much faster) than they can today without interfering with the other half of the system. (With APIs and libraries to bridge the gap.) The manpower alone that this situation frees up means more people are available to work on making the Samsung experience better without having to worry about the underlying Android code.
With Android N, Google has essentially started to divide Android into two sections: the core OS (the framework that makes everything work) and the interface (the apps, launcher, notifications, and everything else the user interacts with).
Take it a step further and consider a smaller company without Samsung's seemingly bottomless resource pool and consider how this helps it. A more "standalone" system built this way is better for everyone — and most importantly that means you and me.
Let's go even deeper
Android as a framework instead of an operating system means it's easier to change the user-facing features.
Android as a framework instead of an operating system means that it's easier to change the user-facing features. I think back to "blocking mode" on recent Samsung phones, or Moto Display on the original Moto X. They definitely weren't made better with Android updates, and what we have from Google to replace them isn't as good as the originals. A way for a vendor to tap into the system processes with its own interface — and system processes that stay the same between versions — lets Samsung control how you keep notifications in check. Or it lets Lenovo/Moto display things on the lock screen they way they want to do it, without redesigning everything from scratch each time a new version comes out.
It also means that what we're seeing today may never grace the phone currently in your hands.
Nexus phones are a brand. Nexus phones don't run unadulterated open-source Android — virtually nothing does. Google takes the code and changes it to its liking and then installs that version of Android on the phones it sells — and that's exactly what HTC and LG and Samsung do. Google touches less of the system than most manufacturers (though the HTC One A9 was darn close) but it's still not the purely open source Android you can download and build yourself.
If we take these new ideas — and make no mistake that right now they are only ideas — and think ahead a year or so, it means that things like new notification trays or dark modes or multi-window are just how Google wants to interface with the system on its vision of Android. Samsung or Huawei are free to do their own thing — and they will — and it's not going to match Google's thing. But more important is that it's not going to break things as easily. The system just lets you pick a color for the interface. "Dark Theme" is a UI idea, and one that anyone can implement anyway they like.
The biggest advantage would be seen when it comes to security updates. We pick on Samsung a lot when it comes to monthly security patches because it is the company we expect the most from. Being the big dog means you get the most scrutiny. Samsung has reasons why only a few models get timely security updates, and we imagine most of them revolve around development costs, or sheer manpower. If Android becomes more of a framework than a full operating system, it will be easier to get that framework updated on more phones at a faster pace.
Hopefully Google is steering the Android ship in a way to fix its biggest problem.
Let Google worry about patching Widevine or Stagefright, and Samsung can worry about its own software — the thing it knows best. Samsung can rightly let Google be the fall guy when it comes to native Android bugs. Even the Evil Cabal of North American Carriers can butt out of the security patch process. Everyone wins.
We're speculating a lot here based on some relatively small changes to the inner workings of the Android N Developer Preview. That's what we can do right now without source code or official words from Google HQ. But we do know that Google always has a reason for the changes it makes (though we often disagree), and these small changes to the way the vendor and OEM sections of Android work weren't an accident.
We expect to learn a lot more at Google I/O, and hopefully Google is steering the Android ship in a way to fix its biggest problem.
Get the Android Central Newsletter
Instant access to breaking news, the hottest reviews, great deals and helpful tips.
Jerry is an amateur woodworker and struggling shade tree mechanic. There's nothing he can't take apart, but many things he can't reassemble. You'll find him writing and speaking his loud opinion on Android Central and occasionally on Twitter.
-
"The first of them is easy — this is a super-beta (if that's not a word, it needs to be) version of software that will have bugs on top of bugs." Did you mean alpha?
-
Pretty sure Jerry knows the term alpha software. In all fairness, Google's own sign up page says "beta." Posted via the Android Central App
-
Alpha-beta then. ;)
-
The alpha release of a beta program. Posted via the Android Central App
-
Or a beta of the alpha release
-
NERDSSSSS! *in Ogre voice* Posted via my glorious Nexus 6P
-
Sadly, most readers of this site are way too young to have any idea who Ogre is... Posted via the Android Central App
-
Yes, Android N is called "Nerds". :)
-
I love you. Posted via the Android Central App
-
I'll wait for the Tri-Lambda version
-
The fact that we can all download and install it means it's past (and passed) the alpha test phase, though it's probably still pre-beta. The real beta begins in October/November with new nexus devices! Posted via the Android Central App
-
You joke, but Android is WAY less buggy than iOS and WM10 as of late...Android M has been great to my Nexus 6, Moto 360 (first gen)...usually newer OSes slow older stuff down, not make it better...kudos to Google... Posted via the Android Central App
-
It's only half joking... Most nexus users (me included) make their peace with the fact that x.0 versions will have issues. But some people prefer to risk burning their mouth on a freshly baked cake than eat a stale week old one. And x.x.x version with fixes roll out quick for the nexus. Can't speak to iOS... Last iPhone I played with was a 4s, and I've never owned an apple product or used one of their services
¯\_(ツ)_/¯ Posted via the Android Central App -
Yeh, you have no way to prove that. My iPhone is as stable as can be. So is my Moto X on Lollipop now, though initially was a POS. I think the biggest bugs are seen other all platforms with their initial big OS release, subsequently being ironed out with point releases.
-
The newest version of Pure Nexus is nearly flawless on my Nexus 6. This is about as stable as I've ever seen Android. Marshmallow was a real winner.
-
They were actually talking about one of the earliest releases of android this year - we should expect it around summertime (july, august).
This is partly why the beta program is opened so early, so the process eliminating issues and bugs goes a bit more fluently :) -
As a lover of "stock" android and direct updates from google, this excites me. As a person that knows that android's open nature (with google services) is why android has become the powerhouse it has, this scares me. Updates and security are one thing, but I worry google will take things to far and hold their services hostage. I worry that Google will become too restrictive on the OEM's and stifle further innovation. I know this is very tin foil hat, but taking more control is a slippery slope.
-
You're kidding right? Google wants all those services on as many devices as possible (unless you're a Windows Phone).
-
They would be on Windows Phone if it was relevant. It isn't.
-
Thank you, Captain Unnecessary-Addendums-For-the-Sake-of-Being-Crappy-to-Another-User-Base. We all know Windows Phone market share is too small to put forth the effort, hence why I mentioned Windows Phones being the exception to my statement.
-
You said it like Google purposefully keeps its services off Windows Phone in a nefarious manner. You didn't mention any of the other irrelevant platforms like BB10, FireOS, Ubuntu, etc. Why mention Windows Phone at all if it is obvious why Google doesn't support it? Microsoft created a sub-par platform and because of this, it gained no traction. If anyone deserves the hate, it is Microsoft, not the critics.
-
As someone that has used all three platforms, Windows phone 8.1 and now 10 ARE NOT sub par -- except for App gap. I currently use Android as a daily driver and prior to that IOS. All three have their pros and cons, but I feel the WORST of the three platforms is Android -- primarily because there is no consistency as to how it performs across multiple devices and their awful track record regarding updates. I use Android currently because I wanted a bigger battery than the Iphone 6s. I believe Google flat out doesn't want to bring it's services to Windows Phone -- namely Maps -- as it doesn't need/want another competitor. App gap is what currently holds Windows phone back. Microsoft had too many starts and stops and do overs with their mobile platform. But Windows phone is a nice OS that doesn't require the Snapdragon 810 or 820 in order to work properly. It performs pretty darn well on low end hardware.
-
Sub-par is putting it nicely. Through the years Windows Phone was always well behind the competition. They didn't even have a notification center until version 8.1! Consistency between devices is not important to a platform. Actually, that is exactly why Android is superior to Windows Phone. It allows the manufacturers to have their own identity and gives users choice. They do not have this with Windows Phone. If you don't like the UI, then you don't buy a Windows Phone. It seems not many people like the UI as nearly everyone has chosen to not use the platform. The UI has failed every time Microsoft has implemented it. From Zune to Windows Phone to Windows 8. Android also works quite well on low end hardware. It wouldn't be so prolific, especially on the lower-end if it didn't. I have a $100 Galaxy Grand Prime and am actually quite surprised how well that device runs even with Touchwiz.
-
I still love WM8.1 except for the app gap. It ran so smooth, layout was perfect, updates came directly from Microsoft (once in preview mode)...but oh the app gap was horrible... Posted via the Android Central App
-
How about MS pay Google for their services? They just expect Google to do it for free, when pretty much Google ran the numbers and probably figured it wasn't cost effective.
-
That's all on you, man. I'm not hating or criticizing. I didn't suggest it was nefarious at all. I was just pointing out the obvious exception to my statement. You're the one who came in crapping on a platform. Correct me if I'm wrong, but you CAN sideload onto bb10; and FireOS and Ubuntu are novelties. No one actually purchases products with these softwares out of anything other than curiosity and tinkering. They ain't planning on replacing their smartphone with them.
-
And that will hopefully be what keeps Google on the good side of things, but right now android's market influence is massive and still growing. The only way for Google to fix the largest criticisms of android (updates and fragmentation) to to exert more control and restrict OEM'S. It is obvious that pressure from users is not going to be enough. The problem has been going on far too long. With the influence Google has to control android and Google's ability hold their services hostage, this could turn into a bad situation really quick. Google could easy lock out a lot of lower level customization. Posted via the Android Central App
-
They COULD, but I don't see why they would. Their current marketing strategies are actually celebrating OEM customizations
-
Android´s flaws would not affect its growth. It is currently the only viable option to any OEM who wants to be in the smartphone business. Other that iOS, OEMs have tried and failed with their own OSs. So just like it is with PCs, either you deal with Android the way it is, or you don´t make the device you wanted to make.
-
This doesn't seem like exerting a different control to me. This just seems like making it easier to customize overall. The companies can still go in and change that section if they want to, they should just have less of a reason to. I understand what you mean though, if Google didn't give play services to companies that changed different parts of Android. It's unlikely they will though. Google has the amazing ability to suck a lot at software, so allowing other people to change stuff helps them. Posted via the Android Central App
-
There is a difference between control and responsibility - So I'm not quite sure what you're referring to.
-
I'm cynical about this. Posted from my Nexus 6/Nexus 7 2013/Surface Pro 3
-
I'm more sceptical than cynical... Though I'm sure Google aren't simply doing this from the kindness of their hearts. Posted via the Android Central App
-
I could not hold it anymore.
I signed up for the beta program for my Nexus 9.
As soon as I get home tonight, I will be busy on it -
If Google ends up doing this, it would be a step forward towards quicker updates to Non-Nexus devices.
-
It seems like Google is trying to fix the update process for Samsung since they want to keep skinning the phone. Samsung could easily run Vanilla android and just make their features Proprietary apps for their phones instead
-
I got the update while sitting in a hospital bed recovering from surgery. I have to admit I had concerns since it's my only phone but I haven't had many issues. Phone works fine just once in a while a app forces quit, but it hasn't made my phone unusable Posted via the Android Central App
-
You're ambitious to choose to deal with possible instability while on the mend.
-
I put it on my daily driver and have had very little to complain about. So far, there have been some issues with lag and non-responsive screens but it's not the norm. For a beta, it's relatively stable. It's no worse than the ROMS that were thrown together from CM base and 'pick your add-on feature'. Some of them had stability problems that were far worse than this. It just shows that Android as an OS (possibly a framework) has matured to a level where even beta releases don't have to be deal breakers. Also, look at it this way, Most people who have downloaded the beta also read blogs like this and should already know that if things get totally out of whack, they can flash a stock image and be back to a stable phone in relatively short order.
-
I say that Google needs to take control of the framework. The OEMs put their skin/launchers (Touchwiz, Sense, etc) in Google Play and make them only compatible with their devices so anyone can't just install them on devices that they aren't meant for. The carriers just need to put their apps in Google Play. Its probably just a fantasy because I don't see that working at all. There are some things that would still need carrier approval to update because they are carrier features for the phones (wifi calling, hd calling, volte) Is it really that hard to get something like this done? I'm not a developer or engineer. I'm just a guy typing on his work computer instead of doing work. (Don't tell my boss)
-
In terms of carrier-specific features, iOS seems to handle this pretty well. The carrier sends a carrier update to the phone that turns these things on when they're supported, while the features themselves are already baked into the OS. The only thing you'd want to avoid is giving the carrier the ability to disable stuff that isn't specific to its network architecture, such as turning off third-party video calling in other apps if you don't have an approved data plan.
-
In terms of software engineering, it really is the next logical step as code is being refactored to create this separation between core system functionality and interface implementation. While the article is speculative, I think the conclusions are very sound. They're definitely taking a step in the right direction with this, although I could see this taking a couple of years before it gets into an ideal state.
-
"pack up our ball and move to..." Never!
-
Basically, separate the OS into a framework and UX and then have Google deal with the framework while OEMs like Samsung deal with the UX and whatever they've added? I'm interested, especially if this leads to faster updates. Though who's the one pushing the updates still? Is it still going to be OEMs and carriers or will Google push out it's own framework update while OEMs and carriers push out their own updates? Mmmmm, Android Smores....
-
I understand that Google will update the framework while OEMs will take care of their UX updates.
-
"And the beatings will continue." At least until morale improves, right, boss? Posted via the Android Central App
-
You give Samsung too much credit. They don't know what they're doing, have no clear design principles, and certainly don't have a bottomless pit of resources to work on software, otherwise they would update more of their devices instead of nletting them rot and continuing to sell non supported tablets.
-
I'm sure they know what they're doing. Allowing devices to fall behind on updates pushes people who want the latest features to buy new devices.
-
Very interesting. We were blasted with N related news yesterday and the goodness continues today :) Posted via the Android Central App
-
So is this essentially how some versions of Linux work, where you have the OS running everything, and then Xserver providing the GUI, which can be swapped out anytime (depending on the flavor of Linux). Looks like Microsoft was on to something with the windows phone 10, and separating the firmware from other parts of the OS for easier updates. Modularity and compartmentalization is smart. Posted via the Android Central App
-
In order to be really taken seriously, Google has to do something, other than Nexus, to enable updates to get out easier than they are now. It's a joke that even flagship products receive few updates -- although it is getting better. I gather Google, the manufacturers, and the carriers all play a role in the upgrade fiasco. Nevertheless, the OS comes from Google so I agree that is up to Google to take the lead in this.
-
Hence what this article is talking about, separating Android in two parts, framework which will be handled by Google and UX which wil be handled by OEMs.
-
This is EXACTLY something I had suggested happen a few months ago. Other than coding finesse, I don't see how this isn't possible on both the OEM's and Google's end. Now the bigger question is getting the carriers to swallow this. And seeing as how Samsung alone makes up the majority of their sales...I think they'll be willing to bite the bullet on lack of control over what Google chooses to do with their own OS.
-
Figure the max a phone generation is two years, so if Google focuses on phones from 2014 and newer (which they are on Nexus) and since most companies SAY they support phones for two years (liars). This shouldn't be a problem. Biggest problem is they need to be able to bypass the carriers for essential updates, if not all of them. Posted via the Android Central App
-
@Jerry, that is a great piece! Most other pieces I've read only gloss over the minor changes and warn potential users that it is buggy.
-
I would think manufacturers would love this because they would never have to update their part of any phone. Release it and be done. Let Google do the updates while the phones still look and feel like the manufacturer's version of Android. At this point in Android life cycle couldn't google really lock things down by simply requiring the system or whatever parts be left to Google to update in order to get Play Store support? I can't see manufacturer's abandoning Android as most of them sell nothing else. None of them, not even Samsung, can get by on their own app ecosystems at this point either so wouldn't they have to go along with it if the Play Store is tied to giving Google control?
-
It sounds like this is making Android more modular. Essentially turning different parts of the OS into plug-ins... Sort of. The fear seems to be that Android will be come less 'open' as a result, which could happen... But another way to look at it, is it's making it easier to change user facing features, without taking away from the core experience... Which you could look at as being more open... Maybe. Anyway, I'm intrigued at the possibility. Faster updates for non Nexus devices is something I really want, since vanilla android has been moving in some directions i don't like in the last couple of years. Posted via the Android Central App
-
The separation of church and state (framework and apps) is a great step forward. Especially if Google could push the updates to the framework (read: OS version), this would lead to less "when will my *insert device here* get an update?" Although, this will probably be primarily for the security patches, and will do nothing to help reduce the time between OS updates for skinned phones. And, everything will still be at the mercy of the carriers. The manufacturers should just put their foot down, and say "we're going with the apple method. We will control when the updates go out." If all of them give the carriers the finger, are the carriers just going to stop selling phones?
-
I think the idea that the carriers don't have a say in Apple's update schedule is a carefully crafted illusion. Apple simply waits until all the carriers have 'approved' the update, then announces it, then pushes it. That's my suspicion anyway. Posted via the Android Central App
-
Yeah, I believe this is the case. Apple might be big, but they're not bigger than hundreds of carriers and their competitors a whole; so Apple, now more than ever, needs carriers to sell iPhones more than carriers need Apple's iPhones, especially with Samsung, Motorola, Google and others churning out great phones that people actually want and can afford. In the end, Apple is just one and if they get frisky with a big carrier, that carrier will be more than happy to sell more Samsung GALAXYs on contracts to people because they can "control" those; customers who need an iPhone can buy one unlocked on Amazon for a premium price. Apple sales would be hurt because I don't see why someone would switch carriers just for a phone; people switch carriers because they want a better overall service.
-
Have you ever owned an Iphone??? I switched from and Iphone5 to Android. I like Android, but in some respects I wish I never switched.... Apple has nothing to worry about. Unless all of a sudden carriers decide to sell unlocked Android phones so that ALL the manufacturers can then push TIMELY Android updates. FAT CHANCE! The new Apple SE will probably outsell every other single Android phone on the market -- it will probably be neck and neck with the Galaxy 7.
-
Yes this is awesome!!! If what Jerry is speculating turns out to be true then its about time Google lol.
I have always liked the idea of every phone being stock android with the skins being something that can be downloaded and installed on top of android like a regular app. Tho what Samsungs offers with touchwiz and all their apps may differ on an OS level then an app like GO Launcher it still makes sense to have things seperate. Essentially the S Health app is just an app and so is S notes tho i know there has to be certain libraries and software changes to get hardware working with software. This would be an awesome and much needed change to android and i think the evolution of Android demands it... Google has done well by taking their apps out of the system and making it so the apps can be updated seperatly from the OS. This seems like the next logical step. Seperate things so the framework of android can be updated and make it such so samsung or whoever can tweak/theme the UI however they like and also to be able to add libraries and such without messing or rewriting the whole OS. This is gonna make android more awesome. Posted via the Android Central App -
Hi, I'm using Nexus 5 do you guys think they'll officially release the update for my phone and they're doing the same they did when they announced Android Lollipop (5.1) and the Nexus 4?
-
This is how Android should have been designed from the start. Lay the foundation, and provide the hooks that let others build on top of it without having to change the foundation.