A month after initially announcing the concept of an Awareness API that allows apps to intelligently react to user context, Google has made the Google Awareness API available to all developers via Google Play services. The API utilizes seven context types (i.e. location, weather, user activity, etc.) to give apps better understanding of users' situations. Such understanding allows apps and app developers to provide optimized and customized user experiences.
The Awareness API includes two APIs that leverage context: the Snapshot API and the Fence API. The Snapshot API allows an app to request information about a user's current context. For instance, a connected app can request a user's location and the surrounding weather conditions. The Fence API enables an app to react to changes in a user's context, or when such context matches specific conditions. For instance, an app can request that the API alert the app whenever a user enters a certain location, or when a user plugs in his or her headphones.
Trulia, the popular real estate app, was an early integration partner for the Fence API. Powered by the Fence API, the Trulia app suggests open houses in the user's area based on location and weather conditions. SuperPlayer Music utilizes both the Fence API and the Snapshot API to suggest music for a user's particular mood. A user might be in the car, working out, or warming up; regardless, SuperPlayer's assistant aims to suggest the perfect song for the moment.
The seven contextual signals used by the Awareness API include time, location, place, activity, beacons, headphones, and weather. Google built the API with integration and resource allocation in mind; meaning, developers need add only one API to an app and the Awareness API automatically manages impact on battery life and data usage. For more information, visit the API docs and the API Guide.