Announced in May at Google I/O, Android 7.0 Nougat brings with it a slew of updates and improvements to Android 6.0 Marshmallow. Android Marshmallow itself brought great features to Android. Android Nougat brings Android to another level. Let’s dive into each flavor of Android to see the changes that Marshmallow brought, and compare them to the big changes coming in Nougat.
The updates to Android Marshmallow fall under four categories:
- Now on Tap
- Smarter Batteries
- Control & Security
Now on Tap
Now on Tap is an improvement on Google Now. When you’re inside any app, you can hold down the Home button and Now on Tap activates. The system figures out what’s on your screen and provides relevant, contextual information. With this features, Google Now is more integrated into the Android system, instead of being relegated to one app or screen.
Want to go from getting a text about dinner to quickly ordering that dinner? In your text app, activate Now on Tap and see an OpenTable card for the restaurant that your friend mentioned in the text. Tap the card and you’ve got a reservation for two.
With Doze, your Android phone can manage its battery life better. Doze is a set of rules that will automatically put your phone to sleep when you’re not using it. The feature kicks in when your phone is sitting still on the table. It doesn’t work when it’s connected to a charger (but then again, Doze isn’t needed while charging).
Unfortunately, this means that it doesn’t work too well while the phone is in your pocket. Doze doesn’t work if the gyroscope or motion sensors are active. But when it does work, almost every app goes to sleep. You’ll still get notifications from high-priority apps, like phone calls and text messages. This means that Doze isn’t meant to be a replacement for Do Not Disturb mode.
Another new feature of Android Marshmallow is App Standby. While Doze causes your entire phone to sleep while unused, App Standby shuts down apps that haven’t been used in a while. According to Google’s developer page, your phone considers an app “idle” unless one of the following occurs:
- The app is launched by the user
- The app has a process currently in the foreground (either as an activity or foreground service, or in use by another activity or foreground service)
- The app generates a notification that users see on the lock screen or in the notification tray
- The user asks for the app to be exempt from optimizations via Settings
Control & Security
Android Marshmallow gives you more control over app permissions. Instead of granting apps all permissions when you install them, you give them permission only if the app requests a certain feature, like accessing the microphone. It’s also easy to revoke permissions for apps, even apps designed for older versions of Android.
A new security feature in Android Marshmallow is system-level support for fingerprint sensors. If your Android phone has a fingerprint sensor, it’s easier to use it to unlock your device and require it for Play Store purchases. Since the API is open to developers, apps like password managers can add support for fingerprints.
That’s not all though. Android Marshmallow has many more features, like Android Pay, adoptable storage, enhanced productivity, new Android Runtime, MIDI support, improvements to system usability, and more. Let’s explore a few of these bigger features.
Android Pay is a new payment system for Android devices. You can add credit/debit cards, loyalty cards and gift cards. In a store, you simply unlock your phone, hold it near a contactless terminal, tap on the screen and pay. At select merchants, your loyalty points and offers will be automatically applied.
With adoptable storage, you can use an SD card and integrate it better with your phone’s native storage. When you format a card as internal storage, it will no longer be removable, so it’s better to add a big 64GB or higher SD card.
The SD card is formatted as a local 128-bit AES encrypted EXT4 drive and mounted as part of the system. Your phone then sets it as preferred storage and you get prompted to transfer your data over to the card. New data that is created will move to the SD card by default.
Android Marshmallow introduces a new Android runtime called ART. A runtime is basically a way for apps to run on top of the Android OS. ART replaces Dalvik, the old runtime. ART is meant to boost the performance of modern Android phones and makes better use of CPU and memory capacity.
Dalvik is based on JIT (just in time) compilation. This means that when you run an app, the part of the code required for execution is compiled to machine code right at that moment. As you use the app, more code is compiled and cached. The system can reuse the code while the app is running.
ART is different in that it compiles Dalvik bytecode into a system-dependent binary. This means that all of the app’s code is pre-compiled when you install it. The app opens faster, and the native execution of the machine code uses less CPU resources.
Android 7.0 Nougat brings powerful updates to Android, once again under four main categories:
Doze gets better in Android Nougat. Now, instead of just putting your phone to sleep, it will completely eliminate background tasks whenever the screen is off. This means that unlike Doze 1.0, it will work when your phone is in your pocket, purse or backpack.
A big leap in graphics comes in the form of Vulkan. Vulkan API gives gaming developers control over the GPU. This gives games better graphics and smooth, fast performance. The Android runtime has also been improved so that app installation will be faster and the compiled code footprint will be smaller.
Android N also introduces seamless updates. Inspired by how Chrome OS works, Android Nougat will have two system partitions. One will be online and used for normal system functions. The other will be offline and will be used for updates.
In the future, when you install a new system update, it will happen automatically in the background. The online partition will be running as normal so you can keep using your phone, while the update downloads to the offline partition.
Once it’s finished downloading, Android applies the update by simply switching partitions. The offline partition becomes the active partition and the online partition becomes the offline one. The black “Android is updating” screen becomes a thing of the past.
Additionally, the second partition gives you a failsafe in case of a botched update, like this: While running on System A, Android applies an update to System B. On reboot, the bootloader swaps partitions and tries to boot from System B. If it fails, you restart the phone and the bootloader switches back to System A. Android then connects to the internet and tries to fix System B by applying the update again.
One of the more visible updates of Android N is the tweaked UI. The notification menu has instant control toggles for Wi-Fi, Bluetooth and more. Notifications are more space efficient and collapsible. Multiple notifications from the same app are now collapsed into one notification, with the most recent one at the top. Users can also directly reply to certain apps from the notification.
Quick Switch & Multi-Window
Two multitasking updates are Quick Switch and Multi-Window. Quick switch lets you instantly switch back to your last app by double tapping the Recent button. There is also a Clear All button in the Recent menu. Then, when you press the Recent button inside of an app, you can select a second app to open alongside it in a split-screen view. You can drag and drop items between the two open apps.
With Picture-In-Picture, you can watch a video while using another app. Although it’s aimed more towards the bigger screen of Android TV, it does work on phones and tablets. First used in the YouTube app, it’s now open to all developers. Developers can choose when to trigger PIP mode, like these examples:
- Your app can move a video into PIP mode when the user navigates back from the video to browse other content.
- Your app can switch a video into PIP mode while a user watches the end of an episode of content. The main screen displays promotional or summary information about the next episode in the series.
- Your app can provide a way for users to queue up additional content while they watch a video. The video continues playing in PIP mode while the main screen displays a content selection activity.
Google adds major security enhancements to Android Nougat. With a new Network Security Configuration, app developers can customize network security settings without modifying app code and use a custom Certification Authority. The main features are:
- Custom trust anchors: Customize which Certificate Authorities (CA) are trusted for an app’s secure connections. For example, trusting particular self-signed certificates or restricting the set of public CAs that the app trusts.
- Debug-only overrides: Safely debug secure connections in an app without added risk to the installed base.
- Cleartext traffic opt-out: Protect apps from from accidental usage of cleartext traffic.
- Certificate pinning: Restrict an app’s secure connection to particular certificates.
Media Server Hardening
Android N also brings media server hardening. Google can stop bugs like Stagefright from becoming vulnerabilities by de-privileging and isolating media components from handling untrusted content. Mediaserver now adheres to the principle of least privilege.
With key attestation, Android developers can make sure that the keys they use are valid and stored in the phone’s hardware-backed keystore, not in software. Only a small number of Android N devices can use hardware-level key attestation though.
In previous versions of Android, the OS used block-level encryption to make the whole partition or storage device encrypted all at once. Now, with file-level encryption, your entire Android device is encrypted. When your Android device boots/reboots, it’s already encrypted. Only certain apps can be run in direct-boot mode.
This means that you can still receive calls and have alarms go off, but to do anything more you’ll have to unlock the phone, which then decrypts it. Once it’s unlocked, file-level encryption means that the user and apps have more control over how data is encrypted.
Scoped Directory Access
With this feature, developers have an easier way to have apps ask users for access to specific directories in external storage. The app won’t need permission for the whole volume or asking for folder permissions. For example, a photo app should only need access to the Photos storage folder and not the Music folder.
A couple of other big features coming to Android N are Daydream VR and new Google Apps – Allo and Duo.
Daydream is Google’s way of providing a unified platform for Android virtual reality devices. Since VR is resource-intensive, certain phones will be specially built to be “Daydream-ready”. These devices will have low-latency sensors, low persistence display and minimum CPU/GPU performance.
Google also provided a schematic for a Daydream-ready VR headset. When a person uses one of these headsets, they can use a special Daydream controller to interact with virtual reality, instead of a trigger button on the headset itself. Android N will also have a VR Mode to easily switch into virtual reality without needing to take your headset off.
Allo & Duo
Google is releasing two apps to Android N called Allo and Duo. Allo is a messaging app with a built-in AI called Google Assistant. Users will be able to search the web, express themselves in new ways and talk to Google Assistant right within Allo.
New expressive features include stickers, Ink to draw on photos, and changing the size of chat bubbles. Allo also has a Smart Reply feature for quick replies on the go.
Google Assistant is a cross between Google Now and a chatbot. You can actually have a conversation and play games with Assistant. It also provides smart suggestions in your conversations.
For example, if you message your friend about having French food for dinner, the Assistant will proactively suggest French restaurants nearby. You can tap on the suggest to bring up restaurant cards that the other person can see too. Once you make a choice, you’ll see options to contact the restaurant, see Yelp reviews, and find it on a map without ever leaving Allo.
Finally, Allo has an Incognito Mode for end-to-end encryption for your messages. Unfortunately, the smart features of Allo like Assistant and Smart Replies won’t work in Incognito Mode, as they rely on machine learning and natural language processing.
With Duo you get a simplified video calling app. It’s a simple one-to-one app that “takes the complexity out of video calling”. If a call fails to connect or if the video is lagging, Duo will adjust the call quality to changing network conditions.
When bandwidth is limited, Duo will automatically reduce the video resolution to keep the audio going smoothly. Duo can also seamlessly switch between Wi-Fi and cellular connections like Project Fi.
There is a quirky feature called Knock Knock where you can see live video of the person calling you, even before you answer. This lets you know who is calling you at a quick glance and why they want to talk. Like Allo, Duo encrypts all of your video communications end-to-end.
As you can see, both Android Marshmallow and Android Nougat bring fantastic updates. The release date of Android Nougat is still unknown, but will probably be announced in September or October, alongside the new Nexus phones. All of these new features will push Google and Android into a new era of mobile computing. And with Google Assistant, they are one step closer to the dream of Star Trek-like artificial intelligence.