com.google.android.gms.maps.LocationSource |
Defines an interface for providing location data, typically to a GoogleMap
object.
A GoogleMap
object has a built-in location provider for its my-location layer, but it can
be replaced
with another one that implements
this interface.
A GoogleMap
object activates its location provider using
activate(OnLocationChangedListener)
. While active (between
activate(OnLocationChangedListener)
and deactivate()
), a location provider
should push periodic location updates to the listener registered in
activate(OnLocationChangedListener)
. It is the provider's responsibility to use location
services wisely according to the map's lifecycle state. For example, it should only using
battery-intensive services (like GPS) occasionally, or only while an activity is in the
foreground.
Nested Classes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
LocationSource.OnLocationChangedListener | Handles a location update. |
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Activates this provider.
| |||||||||||
Deactivates this provider.
|
Activates this provider. This provider will notify the supplied listener periodically, until
you call deactivate()
. Notifications will be broadcast on the main thread.
listener | listener that's called when a new location is available |
---|
IllegalStateException | if this provider is already active |
---|---|
IllegalArgumentException | if listener is null
|
Deactivates this provider. The previously-registered callback is not notified of any further updates.
IllegalStateException | if this provider is already inactive |
---|