i/o conference logo - blue on light blue background

What’s New from Google I/O 2016

What’s new in Android and Google Development

Mobile Architect Josh Lamkin summarizes the best new features revealed in Google’s annual developer conference.

At their annual developer conference this year, Google announced some nice new features that streamline more intelligent functionality of native apps. Some are brand new, and some represent added sophistication to features announced in previous years. Here are a few of my favorites along with some real-world examples that illustrate how they can be implemented in an app.

Custom web tabs in a native App

Google announced custom web tabs to replace either linking to an external browser (like Chrome) or embedded webview inside a native application. This is backwards compatible to Android 4.1 (API 16)

Three bonuses for using custom web tabs:

  • The destination website loads faster
  • Developers can theme them so they appear as part of the whole application
  • Developers can preload a list of sites. (i.e. if you know that most users click "About Us" or "Contact", you can preload those pages to reduce wait time for users)
Awareness API*

The new Awareness API was built on top of some existing Google APIs to bundle them together, make them easier to use, and manage system health (battery and memory optimizations).

Awareness API is one tool within your app that can detect the following seven signals:

  • Time – Current local time
  • Location – Latitude and longitude
  • Place – Place, including place type
  • Activity – Detected user activity (walking, running, biking)
  • Beacons – Nearby beacons (including namespace, type, and content)
  • Headphones – Are headphones plugged in?
  • Weather – Current weather conditions

*This is bundled in Google Play Services and compatible with all play services Android devices.

Fence API*

Are you familiar with "Remind me when I get home to…"? Well, now your app can listen for each of the seven signals listed above in any combination. For example, you want to tell your user to go pick up a prescription, but only when they are driving home in the evening after work on a weekday and are approaching their pharmacy. You can do this using the Fence API by combining time, location, place (to know where the pharmacy is) and activity.

Snapshot API*

Instead of saying "notify my user when these stars have aligned," as in the Fence API, Snapshot API lets your app check "where are the stars right now?" Get instant details about the user’s current environment by reading the seven signals in the Awareness API. Your app can then change behavior based on the current state.

Updates to Nearby API*

Introduced last year, Nearby is an API for easy handshakes between devices that are near each other. Once the handshake is done, data is exchanged over network calls. Nearby allows people to share data knowing they’re only offering it to people they’re with.

New in 2016 is iOS support, so Android and iOS applications can share data via Nearby API.

Another new feature for Nearby is beacon scanning. The app registers Beacon IDs it is looking for. Leveraging Nearby API allows the app to have:

  • Less permissions (no need for bluetooth permission in order to detect beacons)
  • Piggyback on other applications’ beacon scans (if another app scans a beacon that matches your filter, your application will be woken up to handle that beacon.)
  • If the user has Location history turned on, every time the OS does a location scan, it does a beacon scan and wakes your app up even if your app has been killed.
Google Beacons*

Google introduced their Beacon solution this year. Their main push can be summarized as "One beacon…many uses" instead of "One beacon, one use". If you register your beacons with Google (which can be done via API or dashboard) you can allow other people (by permission) to use your installed beacons for their apps, or vice-versa, you can use other beacons (by permission) for your app. Also, you can update your beacon to broadcast different data for different apps.

Nearby Push Notifications*

If you register beacons with google and leverage Nearby you can use Nearby Notifications. This allows a beacon to send push notifications to Android devices. For example, if your company uses a conference room reservation app, the beacon in the conference room can prompt people to install the scheduling app.

The notification can be one of 3 types: link to a website, link to an app that’s already installed (if not it falls back to a link to a website,) or install an application. For installing an application, Google is whitelisting applications that can do this. You need to apply to use this feature to ensure it is not abused.


All of the above features are backwards compatible and available on most Android versions and devices. The features below are available only on Android Nougat:

Android Security Updates

There is now:

  • File Based Encryption
  • Key Attestation – allows a progarm to remotely verify that the attest key is in secure hardware and validate it.
  • Keystore – Secure Token and Password Storage
    • Developers can now set that a key is only valid if the user has authenticated in X seconds. Meaning that if the user has not authetnicated on his phone (via passcode, password or fingerprint) in X seconds the device will force the user to authenticate again before using this key in the keystore.
Multi-Window Mode

Android can now have two apps visible at the same time. You can now have two apps either side-by-side, one-above-the-other, or picture-in-picture. The user can drag the dividing line separating the two to make one app larger and the other smaller. This is mostly built-in by Android’s handling of different screen densities, but developers now need to be prepared for very small densities that used to be obsolete. An app can also now launch a new part of its app into side-by-side or one-above-the-other mode. For example, an app can have a ‘show directions’ button that when tapped opens the map view in multi-window mode.

Custom Quick Settings Tiles

Apps can now add a custom quick settings tile (the pull down drawer from the top of an Android device.) This could have a lot of useful features. Imagine changing your chat app status to "Super Busy" or toggle custom VPN app on or off from quick settings.

Quick Reply in notifications

An app can now add custom buttons on the bottom of a notification to allow users to take some quick actions. For example, reply to a chat from a chat application or mark an email as read.

All of these features have the potential to elevate an app from merely functional to seamlessly integrated in a user’s daily life. As we see these APIs integrated into more apps, Android development will broadly be more responsive to a users environment and needs. Understanding the newest technology as it’s announced at Google I/O ensures that SPR Consulting can deliver cutting edge technology year after year.

*This is bundled in Google Play Services and compatible with all play services Android devices.

Tags> , , , ,

Joshua Lamkin