For the second year in a row, Google is making a developer preview for the next version of Android available in March, well ahead of its presumed consumer release in the fall. This one is codenamed “O,” and your guess is as good as mine as to what dessert the final version will be named after. It isn’t yet available for regular users to try out. Although developers can begin testing it right away, it’s best for most people to let things stabilize a bit more before they try it out. Developers can download it today.
Google isn’t yet telling us everything that’s coming in O, but the marquee feature is meant to address a perennial smartphone problem that has seen equally perennial attempts at fixing it: battery life.
For O, Google is continuing its trend toward aggressively managing what apps can do in the background (as iOS has long done) to ensure that runaway processes don’t destroy your battery. As Android VP of engineering, Dave Burke, puts it: “We've put additional automatic limits on what apps can do in the background, in three main areas: implicit broadcasts, background services, and location updates.”
It’s possible that these “automatic limits” could wreak some havoc on existing apps that assume a more liberal stance toward what they’re allowed to do in the background, so developers will want to check up on how it works with their particular apps.
Improvements to battery life is a hard thing to judge — especially with early versions of software. So we won’t know whether Google’s strategy here will be effective on most phones for quite some time.
Easier to judge: changes in the notification system in Android. It seems like notifications get tweaked with every iteration of smartphone software, but Android’s approach has generally been better than the competition’s. For O, the big change is that apps can “group” their notifications into categories called “channels.”
That’s pretty vague, but what it sounds like is that you’ll be able to set what kind of notifications you want from each app from within Android’s main notification settings pane. So if an app offers “high-priority alerts” and “marketing,” you can turn them off directly in Android’s settings rather than digging through the app’s interface.
And speaking of “vague,” Burke also says O has “new visuals and grouping to notifications that make it easier for users to see what's going on when they have an incoming message or are glancing at the notification shade.” We’ll need a bit more clarity before we can know exactly what this all means — or if it’s just random new options for developers that will get used rarely. For something as essential as notifications, it behooves Google not to mess around with the interface too much, unless there’s something genuinely great here.
Here’s one great addition we just found in Google’s developer documents: you can snooze notifications so they appear at a later time, just like you do with email. That’s pretty great.
Battery and notifications are the biggest changes announced today, but there’s a grab bag of other stuff which may appeal to you. For example, Google is aiming to improve sound quality with wireless headphones with “high-quality Bluetooth audio codecs,” as well as Sony’s LDAC codec.
Google is also letting app developers create “adaptive icons,” which will change their look and shape depending on what home screen theme the user has opted for. That’s either a sign that theming is going to be a bigger deal than it used to be on Android, or it’s a sign that all those Android icon packs are getting popular but are still too confusing to set up for most users. Let’s go with both.
Here are a few more additions that hang together thematically, related to how stuff gets displayed or navigated on the screen:
A genuine picture-in-picture mode for videos
A new pop-up window that apps can use instead of the system alert window (actually that sounds terrible)
“Multi-display support for launching an activity on a remote display,” which could refer to something like a PowerPoint presentation mode or a Continuum-style Android-on-the-desktop mode. Either way it sounds weird.
New ways to support keyboard navigation, including especially arrow and tab button navigation
Take that grouping together, and you begin to see signs that Google is pretty serious about making Android work better on Chromebooks. Of course, the current version of Android Nougat is still not available on Chrome OS. I’ve been told that the plan is not to allow Android on Chrome OS to stay a generation behind, but that after it exits beta this spring, it will be kept at parity with the current phone release.
However it shakes out, it seems clear to me that Chrome OS with Android apps is Google’s strategy for big screens going forward. If there’s another Google-made flagship Android tablet, I’ll be mildly surprised.
Lastly, there’s a mix of stuff that’s clearly filling out cases developers have asked for to ensure their apps feel either more professional or less of a hassle to use (or both):
Autofill APIs, which will make it easier for password managers to register themselves as the official autofill app for punching in your oft-entered yet still-sensitive information into other apps
Support for fonts as full Android resources, so they can be used and defined more simply in XML layouts.
“Wide-gamut color for apps,” so that they can take full advantage of the stupid-good screens on flagship phones
A “telecom framework” so third-party VOIP apps can act like first-class phone apps as far as the OS is concerned
WebView (the thing that lets apps use the Chrome rendering engine to display web content) is going to work a little more smoothly because apps will have “multiprocess mode” enabled by default and handle crashes themselves. They can also use Google’s Safe Browsing verification to ensure users aren’t caught on phishing sites.
New Java stuff, including “Java 8 APIs and runtime optimizations” and “the new java.time API.” Google also claims the “Android Runtime,” the code behind the code that runs your apps, will be “faster than ever before, with improvements of up to 2x on some application benchmarks.”
Something called “Network Aware Networking,” which should allow Android devices to communicate directly with each other over Wi-Fi, even if the network isn’t connected to the internet
Developers will be able to test Android O in a desktop emulator or on one of the following devices: Nexus 5X, Nexus 6P, Nexus Player, Pixel, Pixel XL, Pixel C. If you want to try it, you will have to manually download and flash it yourself, rather than sign up for an over-the-air update. That’s for the best, probably: last year the first few developer previews were very much not the sort of thing you’d want to use on your primary phone, and chances are good the same is true this time around.
I asked if there would be a beta this year and Google’s not saying yet — but last year it waited until Google I/O in May to release a truly public beta that made it easy for regular people to try it. Perhaps the same will happen again this year — we’ll be at Google I/O May 17th–19th to let you know if it does.