In general any new software release should be “better” than its predecessor, and while sadly this isn’t always the case (I’m looking at you Windows 8.x), it is generally true. So, as you would expect, Android 8.0 Oreo is better than Android 7.0 Nougat, but how exactly is it better? Let me explain…
The improvements come in two categories: new features and changes. In both of these categories there are some big, eye-catching improvements and at the same time some smaller, yet still very welcome, improvements. To tackle these fairly, I am dividing my look at how Android 8.0 Oreo is better into several parts. Here in this first part I will go over the smaller improvements, as they don’t need much explanation. However, for the bigger improvements I will write a separate article about each one, making this a series of posts about what Android 8.0 Oreo does better. All the separate articles are linked in the “The big improvements” section below.
The smaller, but welcome, improvements
Leaving aside the cosmetic changes to things like the Quick Settings or the reshuffling of the Settings menu, there have been lots of improvements under the hood which occasionally surface somewhere in the user interface. While it might not seem fair to list the new Picture-in-Picture mode or the new Autofill Framework under “smaller” improvements, I have included them here not because they didn’t require a lot of effort on Google’s part, but rather because what they achieve is simple enough and doesn’t require lots of explanation.
First, the new Picture-in-Picture mode. Android Oreo allows activities to launch in picture-in-picture (PiP) mode. This is a special type of multi-window mode which is mostly used for video playback. PiP mode was already available for Android TV but Android Oreo makes the feature available on mobile. Now you can more effectively “multitask” while you’re really just goofing off.
Secondly, Android Oreo introduces the Autofill Framework. It is designed to make filling out forms, such as login and credit card forms, much faster and easier. Both new and existing apps can work with Autofill once the user enables it under Settings > System > Languages & input > Advanced > Input assistance > Autofill service. Developers can optimize their apps for Autofill by providing hints to what a given field should contain (e.g. username or credit card number) as well as marking which fields are important for Autofill. With Android O, completing forms and passwords just got a whole lot easier.
Similarly, Android Oreo can learn about a users’ sharing preferences to better understand which are the right apps to share with. For example, if you take a selfie then Android Oreo could suggest a social media app; if you take a photo of a receipt, Android Oreo can suggest an expense-tracking app; and so on. Android Oreo automatically learns all these patterns according to users’ personalized preferences, meaning you’ll have an OS learning how you do things to save you time.
No matter how big the internal storage is on our devices, it always seems that we don’t have enough space! Android Oreo helps improve this by implementing a per app disk space quota for cached data. When the system needs to free up disk space, it will start by deleting cached files from apps that have exceeded their allocated quota. This means that well behaved apps which keep their cached data under the allocated amount will be among the last on the system to be cleared when necessary.
Android Oreo supports Wi-Fi Aware, also known as Neighbor Awareness Networking or NAN. Devices with the right hardware can discover and connect directly to each other via Wi-Fi Aware. These networks are made of clusters of neighboring devices. The clustering behavior is device-wide, i.e. apps have no control over it, and is managed by the Wi-Fi Aware system service. Android Oreo supports the mechanism for finding other devices in the vicinity (i.e. device discovery) as well as the ability to create a bi-directional Wi-Fi Aware network connection, all without using a “traditional” Wi-Fi access point.
Apps for Android 7.1 or lower have a default maximum screen aspect ratio of 1.86:1 (roughly the US widescreen cinema standard), however now apps targeting Android Oreo or higher do not have a default maximum aspect ratio. With Android appearing on more and more different non-mobile type of devices, plus the recent experimentation by handset OEMs to shun the traditional screen ratios, then this change offers more freedom to device makers. App developers will simply need to adapt.
Android Oreo has also increased the platform’s suitability for non-mobile type devices with the addition of multi-display support. Beginning with Android Oreo there is now enhanced support for multiple displays. If an app is running on a device with multiple displays and an activity supports multi-window mode then users can move the activity from one display to another. When an app launches an activity, the app can specify which display the activity should run on.
As Android matures it has started to implement features that are common on desktop operating systems, but until now haven’t been needed on mobile. For example some apps, such as remote desktop viewers, virtualization clients, and games benefit from being able to control the mouse pointer. Pointer capture is a new feature in Android Oreo that provides such control by delivering all mouse events to a focused view in an app. The app can request pointer capture and define a listener to process captured pointer events. The mouse pointer is hidden while in this mode.
Finally it is worth mentioning Project Treble. Treble modularizes Android into a platform (Google) part and a vendor (OEM) part, which means that essential framework updates can be rolled out faster. Android Oreo is built on Project Treble, so if all goes according to plan we will see updates to Android Oreo hitting devices much quicker than with previous versions of Android. We covered the essentials of Project Treble in our post: Here’s how Project Treble will improve security in Android.
The big improvements
If Android Oreo only had Picture-in-Picture, AutoFill, Wi-Fi Aware, multi-display support and smart sharing then that would already be more than enough for it to trump Android Nougat in the “which version is better” game, but there is plenty more!
One of the most obvious changes for end users is the way Android Oreo handles notifications. For a full rundown of how it works now, please read:
Another big change in Oreo is to the way Android handles background tasks. The changes are designed to limit what background tasks can do and so improve battery life. You can read all the gory details here:
Next up are the improvements to Android’s audio subsystems. There are two main changes here: First, the support for additional Bluetooth codecs. Second, changes to how Android handles audio focus. You can read the full explanation here:
If words like “kerning” meaning nothing to you, then the new support for Downloadable Fonts probably won’t get you too animated, however it is an important advancement for Android, reducing app file sizes in the process. Adaptive launcher icons are another subtle but valuable change which will bring a lot more consistency to Android. You can find out more here:
Finally, it is worth taking a deeper look at Android Oreo’s support for Bluetooth 5:
So as you can see there are lots of reasons why Android Oreo is better than Android Nougat. The only frustrating thing is that unless you own a Pixel or a Nexus then you are going to have to wait and see when (and if) Android Oreo will be available for your device. Also, some of the features like Bluetooth 5 will only work with devices that have Bluetooth 5 hardware and Android Oreo together.
Are you already running Android 8.0 Oreo? What do you think? If you aren’t, are you looking forward to it? Please let me know in the comments below.