to top

Making Your App Location-Aware

Dependencies and prerequisites

  • Google Play services client library (latest version)
  • Android version 2.2 (API level 8) or later

You should also read

One of the unique features of mobile applications is location awareness. Mobile users bring their devices with them everywhere, and adding location awareness to your app offers users a more contextual experience. The new Location Services API available in Google Play services facilitates adding location awareness to your app with automated location tracking, geofencing, and activity recognition. This API adds significant advantages over the plaform's location API.

This class shows you how to use Location Services in your app to get the current location, get periodic location updates, look up addresses, create and monitor geofences, and detect user activities. The class includes sample apps and code snippets that you can use as a starting point for adding location awareness to your own app.

Note: Since this class is based on the Google Play services client library, make sure you install the latest version before using the sample apps or code snippets. To learn how to set up the client library with the latest version, see Setup in the Google Play services guide.


Retrieving the Current Location
Learn how to retrieve the user's current location.
Receiving Location Updates
Learn how to request and receive periodic location updates.
Displaying a Location Address
Learn how to convert a location's latitude and longitude into an address (reverse geocoding).
Creating and Monitoring Geofences
Learn how to define one or more geographic areas as locations of interest, called geofences, and detect when the user is close to or inside a geofence.
Recognizing the User's Current Activity
Learn how to recognize the user's current activity, such as walking, bicycling, or driving a car, and how to use this information to modify your app's location strategy.
Testing Using Mock Locations
Learn how to test a location-aware app by injecting mock locations into Location Services. In mock mode, Location Services sends out mock locations that you inject instead of sensor-based locations.