GeoLocation

data class GeoLocation(val position: GeoPoint, @FloatRange(from = 0.0) val accuracy: Double? = null, @FloatRange(from = 0.0, to = 360.0) val course: Double? = null, val speed: Double? = null, val altitude: Double? = null, val time: Long = System.currentTimeMillis(), val elapsedRealtimeNanos: Long = SystemClock.elapsedRealtimeNanos(), val provider: String = DEFAULT_PROVIDER, val providerType: LocationProviderType = LocationProviderType.REALTIME, val extras: Bundle? = null)

Geographical representation of a certain location. It provides additional attributes like speed or bearing what can be useful in navigation applications.

Important: This is a Public Preview API. It may be changed or removed at any time.

Parameters

position

Geographical position of the current location.

accuracy

GPS accuracy (in meters) of the current location.

course

Course The direction of travel, expressed in degrees clockwise from the north in the range [0,360.0]. Or null if not available. Note: In the Android Location API, the corresponding field is called android.location.Location#getBearing.

speed

Current speed in meters per second. Or null if not available.

altitude

Altitude in meters. Or null if not available.

time

The UTC time of this location fix, in milliseconds since epoch (January 1, 1970).

It is not monotonic, so it should not be used to compare instances of GeoLocation. Prefer elapsedRealtimeNanos for that purpose.

elapsedRealtimeNanos

The monotonic time of this fix since system boot, including time spent in deep sleep, in nanoseconds.

Unlike time, this property can be used to reliably compare instances of GeoLocation because it is guaranteed to be monotonic.

provider

The name of the location provider.

providerType

The type of the location provider (e.g., REALTIME or SOFT_DR).

extras

Extra data accompanying this location.

Constructors

Link copied to clipboard
fun GeoLocation(position: GeoPoint, @FloatRange(from = 0.0) accuracy: Double? = null, @FloatRange(from = 0.0, to = 360.0) course: Double? = null, speed: Double? = null, altitude: Double? = null, time: Long = System.currentTimeMillis(), elapsedRealtimeNanos: Long = SystemClock.elapsedRealtimeNanos(), provider: String = DEFAULT_PROVIDER, providerType: LocationProviderType = LocationProviderType.REALTIME, extras: Bundle? = null)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
val accuracy: Double? = null
Link copied to clipboard
val altitude: Double? = null
Link copied to clipboard
val course: Double? = null
Link copied to clipboard
Link copied to clipboard
val extras: Bundle? = null
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val speed: Double? = null
Link copied to clipboard
val time: Long