Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels) Summary: [Constants](https://developer.android.com/reference/android/location/GnssMeasurement#constants) \| [Inherited Constants](https://developer.android.com/reference/android/location/GnssMeasurement#inhconstants) \| [Fields](https://developer.android.com/reference/android/location/GnssMeasurement#lfields) \| [Methods](https://developer.android.com/reference/android/location/GnssMeasurement#pubmethods) \| [Inherited Methods](https://developer.android.com/reference/android/location/GnssMeasurement#inhmethods)

# GnssMeasurement

*** ** * ** ***

` public final class GnssMeasurement `   
` extends https://developer.android.com/reference/java/lang/Object ` ` implements https://developer.android.com/reference/android/os/Parcelable `

|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) ||
| ↳ | android.location.GnssMeasurement |

<br />

*** ** * ** ***

A class representing a GNSS satellite measurement, containing raw and computed information.

## Summary

| ### Constants ||
|---|---|
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#ADR_STATE_CYCLE_SLIP` The state of the `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeMeters()` has a cycle slip detected. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#ADR_STATE_HALF_CYCLE_REPORTED` Reports whether the flag `https://developer.android.com/reference/android/location/GnssMeasurement#ADR_STATE_HALF_CYCLE_RESOLVED` has been reported by the GNSS hardware. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#ADR_STATE_HALF_CYCLE_RESOLVED` Reports whether the value `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeMeters()` has resolved the half cycle ambiguity. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#ADR_STATE_RESET` The state of the `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeMeters()` has detected a reset. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#ADR_STATE_UNKNOWN` The state of the value `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeMeters()` is invalid or unknown. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#ADR_STATE_VALID` The state of the `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeMeters()` is valid. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_A` Code type for: GALILEO E1A, GALILEO E6A, NavIC L5A SPS, NavIC SA SPS, GLONASS G1a L1OCd, GLONASS G2a L2CSI. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_B` Code type for: GALILEO E1B, GALILEO E6B, NavIC L5B RS (D), NavIC SB RS (D), GLONASS G1a L1OCp, GLONASS G2a L2OCp, QZSS L1Sb. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_C` Code type for: GPS L1 C/A, GPS L2 C/A, GLONASS G1 C/A, GLONASS G2 C/A, GALILEO E1C, GALILEO E6C, SBAS L1 C/A, QZSS L1 C/A, NavIC L5C RS (P), NavIC SC RS (P). |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_D` Code type for: GPS L2 (L1(C/A) + (P2-P1) (semi-codeless)), QZSS L5S(I), BDS B1C Data, BDS B2a Data, BDS B2b Data, BDS B2 (B2a+B2b) Data, BDS B3a Data, NavIC L1 Data. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_E` Code type for: QZSS L1 C/B, QZSS L6E. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_I` Code type for: GPS L5 I, GLONASS G3 I, GALILEO E5a I, GALILEO E5b I, GALILEO E5a+b I, SBAS L5 I, QZSS L5 I, BDS B1 I, BDS B2 I, BDS B3 I. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_L` Code type for: GPS L1C (P), GPS L2C (L), QZSS L1C (P), QZSS L2C (L), QZSS L6P, BDS B1a Pilot. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_M` Code type for: GPS L1M, GPS L2M. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_N` Code type for: GPS L1 codeless, GPS L2 codeless. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_P` Code type for: GPS L1P, GPS L2P, GLONASS G1P, GLONASS G2P, BDS B1C Pilot, BDS B2a Pilot, BDS B2b Pilot, BDS B2 (B2a+B2b) Pilot, BDS B3a Pilot, QZSS L5S(Q), NavIC L1 Pilot. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_Q` Code type for: GPS L5 Q, GLONASS G3 Q, GALILEO E5a Q, GALILEO E5b Q, GALILEO E5a+b Q, SBAS L5 Q, QZSS L5 Q, BDS B1 Q, BDS B2 Q, BDS B3 Q. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_S` Code type for: GPS L1C (D), GPS L2C (M), QZSS L1C (D), QZSS L2C (M), QZSS L6D, BDS B1a Data. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_UNKNOWN` Code type when the code type is unknown. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_W` Code type for: GPS L1 Z-tracking, GPS L2 Z-tracking. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_X` Code type for: GPS L1C (D+P), GPS L2C (M+L), GPS L5 (I+Q), GLONASS G1a L1OCd+L1OCp, GLONASS G2a L2CSI+L2OCp, GLONASS G3 (I+Q), GALILEO E1 (B+C), GALILEO E5a (I+Q), GALILEO E5b (I+Q), GALILEO E5a+b (I+Q), GALILEO E6 (B+C), SBAS L5 (I+Q), QZSS L1C (D+P), QZSS L2C (M+L), QZSS L5 (I+Q), QZSS L6 (D+P), BDS B1 (I+Q), BDS B1C Data+Pilot, BDS B2a Data+Pilot, BDS B2 (I+Q), BDS B2 (B2a+B2b) Data+Pilot, BDS B3 (I+Q), NavIC L5 (B+C), NavIC S (B+C), NavIC L1 Data+Pilot. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_Y` Code type for: GPS L1Y, GPS L2Y. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_Z` Code type for: GALILEO E1 (A+B+C), GALILEO E6 (A+B+C), QZSS L1S/L1-SAIF, QZSS L5S (I+Q), QZSS L6(D+E), BDS B1A Data+Pilot, BDS B2b Data+Pilot, BDS B3a Data+Pilot. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#MULTIPATH_INDICATOR_DETECTED` The measurement shows signs of multi-path. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#MULTIPATH_INDICATOR_NOT_DETECTED` The measurement shows no signs of multi-path. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#MULTIPATH_INDICATOR_UNKNOWN` The indicator is not available or the presence or absence of multipath is unknown. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_2ND_CODE_LOCK` This GNSS measurement's tracking state has secondary code lock. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_BDS_D2_BIT_SYNC` This Beidou measurement's tracking state has D2 bit sync. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_BDS_D2_SUBFRAME_SYNC` This Beidou measurement's tracking state has D2 sub-frame sync. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_BIT_SYNC` This GNSS measurement's tracking state has bit sync. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_CODE_LOCK` This GNSS measurement's tracking state has code lock. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_GAL_E1BC_CODE_LOCK` This Galileo measurement's tracking state has E1B/C code lock. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_GAL_E1B_PAGE_SYNC` This Galileo measurement's tracking state has E1B page sync. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_GAL_E1C_2ND_CODE_LOCK` This Galileo measurement's tracking state has E1C secondary code lock. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_GLO_STRING_SYNC` This Glonass measurement's tracking state has string sync. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_GLO_TOD_DECODED` This Glonass measurement's tracking state has time-of-day decoded. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_GLO_TOD_KNOWN` This Glonass measurement's tracking state has time-of-day known, possibly not decoded over the air but has been determined from other sources. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_MSEC_AMBIGUOUS` This GNSS measurement's tracking state contains millisecond ambiguity. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_SBAS_SYNC` This SBAS measurement's tracking state has whole second level sync. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_SUBFRAME_SYNC` This GNSS measurement's tracking state has sub-frame sync. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_SYMBOL_SYNC` This GNSS measurement's tracking state has symbol sync. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_TOW_DECODED` This GNSS measurement's tracking state has time-of-week decoded. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_TOW_KNOWN` This GNSS measurement's tracking state has time-of-week known, possibly not decoded over the air but has been determined from other sources. |
| `int` | `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_UNKNOWN` This GNSS measurement's tracking state is invalid or unknown. |

### Inherited constants

From interface `https://developer.android.com/reference/android/os/Parcelable` `int` `https://developer.android.com/reference/android/os/Parcelable#CONTENTS_FILE_DESCRIPTOR`

Descriptor bit used with `https://developer.android.com/reference/android/os/Parcelable#describeContents()`: indicates that the Parcelable object's flattened representation includes a file descriptor.
`int` `https://developer.android.com/reference/android/os/Parcelable#PARCELABLE_WRITE_RETURN_VALUE`

Flag for use with `https://developer.android.com/reference/android/os/Parcelable#writeToParcel(android.os.Parcel,%20int)`: the object being written is a return value, that is the result of a function such as "`Parcelable someFunction()`", "`void someFunction(out Parcelable)`", or "`void someFunction(inout Parcelable)`".

| ### Fields ||
|---|---|
| ` public static final https://developer.android.com/reference/android/os/Parcelable.Creator<https://developer.android.com/reference/android/location/GnssMeasurement>` | `https://developer.android.com/reference/android/location/GnssMeasurement#CREATOR` <br /> |

| ### Public methods ||
|---|---|
| ` int` | ` https://developer.android.com/reference/android/location/GnssMeasurement#describeContents()() ` Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. |
| ` double` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeMeters()() ` Gets the accumulated delta range since the last channel reset, in meters. |
| ` int` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeState()() ` Gets 'Accumulated Delta Range' state. |
| ` double` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeUncertaintyMeters()() ` Gets the accumulated delta range's uncertainty (1-Sigma) in meters. |
| ` double` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getAutomaticGainControlLevelDb()() ` *This method was deprecated in API level 33. Use `https://developer.android.com/reference/android/location/GnssMeasurementsEvent#getGnssAutomaticGainControls()` instead.* |
| ` double` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getBasebandCn0DbHz()() ` Gets the baseband carrier-to-noise density in dB-Hz. |
| ` long` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getCarrierCycles()() ` *This method was deprecated in API level 28. use `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeMeters()` instead.* |
| ` float` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getCarrierFrequencyHz()() ` Gets the carrier frequency of the tracked signal. |
| ` double` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getCarrierPhase()() ` *This method was deprecated in API level 28. use `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeMeters()` instead.* |
| ` double` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getCarrierPhaseUncertainty()() ` *This method was deprecated in API level 28. use `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeUncertaintyMeters()` instead.* |
| ` double` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getCn0DbHz()() ` Gets the Carrier-to-noise density in dB-Hz. |
| ` https://developer.android.com/reference/java/lang/String` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getCodeType()() ` Gets the GNSS measurement's code type. |
| ` int` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getConstellationType()() ` Gets the constellation type. |
| ` double` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getFullInterSignalBiasNanos()() ` Gets the GNSS measurement's inter-signal bias in nanoseconds with sub-nanosecond accuracy. |
| ` double` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getFullInterSignalBiasUncertaintyNanos()() ` Gets the GNSS measurement's inter-signal bias uncertainty (1 sigma) in nanoseconds with sub-nanosecond accuracy. |
| ` int` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getMultipathIndicator()() ` Gets a value indicating the 'multipath' state of the event. |
| ` double` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getPseudorangeRateMetersPerSecond()() ` Gets the Pseudorange rate at the timestamp in m/s. |
| ` double` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getPseudorangeRateUncertaintyMetersPerSecond()() ` Gets the pseudorange's rate uncertainty (1-Sigma) in m/s. |
| ` long` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getReceivedSvTimeNanos()() ` Gets the received GNSS satellite time, at the measurement time, in nanoseconds. |
| ` long` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getReceivedSvTimeUncertaintyNanos()() ` Gets the error estimate (1-sigma) for the received GNSS time, in nanoseconds. |
| ` double` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getSatelliteInterSignalBiasNanos()() ` Gets the GNSS measurement's satellite inter-signal bias in nanoseconds with sub-nanosecond accuracy. |
| ` double` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getSatelliteInterSignalBiasUncertaintyNanos()() ` Gets the GNSS measurement's satellite inter-signal bias uncertainty (1 sigma) in nanoseconds with sub-nanosecond accuracy. |
| ` double` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getSnrInDb()() ` Gets the (post-correlation \& integration) Signal-to-Noise ratio (SNR) in dB. |
| ` int` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getState()() ` Gets per-satellite-signal sync state. |
| ` int` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getSvid()() ` Gets the satellite ID. |
| ` double` | ` https://developer.android.com/reference/android/location/GnssMeasurement#getTimeOffsetNanos()() ` Gets the time offset at which the measurement was taken in nanoseconds. |
| ` boolean` | ` https://developer.android.com/reference/android/location/GnssMeasurement#hasAutomaticGainControlLevelDb()() ` *This method was deprecated in API level 33. Use `https://developer.android.com/reference/android/location/GnssMeasurementsEvent#getGnssAutomaticGainControls()` instead.* |
| ` boolean` | ` https://developer.android.com/reference/android/location/GnssMeasurement#hasBasebandCn0DbHz()() ` Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getBasebandCn0DbHz()` is available, `false` otherwise. |
| ` boolean` | ` https://developer.android.com/reference/android/location/GnssMeasurement#hasCarrierCycles()() ` *This method was deprecated in API level 28. use `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeState()` instead.* |
| ` boolean` | ` https://developer.android.com/reference/android/location/GnssMeasurement#hasCarrierFrequencyHz()() ` Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getCarrierFrequencyHz()` is available, `false` otherwise. |
| ` boolean` | ` https://developer.android.com/reference/android/location/GnssMeasurement#hasCarrierPhase()() ` *This method was deprecated in API level 28. use `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeState()` instead.* |
| ` boolean` | ` https://developer.android.com/reference/android/location/GnssMeasurement#hasCarrierPhaseUncertainty()() ` *This method was deprecated in API level 28. use `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeState()` instead.* |
| ` boolean` | ` https://developer.android.com/reference/android/location/GnssMeasurement#hasCodeType()() ` Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getCodeType()` is available, `false` otherwise. |
| ` boolean` | ` https://developer.android.com/reference/android/location/GnssMeasurement#hasFullInterSignalBiasNanos()() ` Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getFullInterSignalBiasNanos()` is available, `false` otherwise. |
| ` boolean` | ` https://developer.android.com/reference/android/location/GnssMeasurement#hasFullInterSignalBiasUncertaintyNanos()() ` Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getFullInterSignalBiasUncertaintyNanos()` is available, `false` otherwise. |
| ` boolean` | ` https://developer.android.com/reference/android/location/GnssMeasurement#hasSatelliteInterSignalBiasNanos()() ` Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getSatelliteInterSignalBiasNanos()` is available, `false` otherwise. |
| ` boolean` | ` https://developer.android.com/reference/android/location/GnssMeasurement#hasSatelliteInterSignalBiasUncertaintyNanos()() ` Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getSatelliteInterSignalBiasUncertaintyNanos()` is available, `false` otherwise. |
| ` boolean` | ` https://developer.android.com/reference/android/location/GnssMeasurement#hasSnrInDb()() ` Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getSnrInDb()` is available, `false` otherwise. |
| ` https://developer.android.com/reference/java/lang/String` | ` https://developer.android.com/reference/android/location/GnssMeasurement#toString()() ` Returns a string representation of the object. |
| ` void` | ` https://developer.android.com/reference/android/location/GnssMeasurement#writeToParcel(android.os.Parcel,%20int)(https://developer.android.com/reference/android/os/Parcel parcel, int flags) ` Flatten this object in to a Parcel. |

### Inherited methods

From class ` https://developer.android.com/reference/java/lang/Object ` ` https://developer.android.com/reference/java/lang/Object` ` https://developer.android.com/reference/java/lang/Object#clone()() `

Creates and returns a copy of this object.
` boolean` ` https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object obj) `

Indicates whether some other object is "equal to" this one.
` void` ` https://developer.android.com/reference/java/lang/Object#finalize()() `

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.
` final https://developer.android.com/reference/java/lang/Class<?>` ` https://developer.android.com/reference/java/lang/Object#getClass()() `

Returns the runtime class of this `Object`.
` int` ` https://developer.android.com/reference/java/lang/Object#hashCode()() `

Returns a hash code value for the object.
` final void` ` https://developer.android.com/reference/java/lang/Object#notify()() `

Wakes up a single thread that is waiting on this object's monitor.
` final void` ` https://developer.android.com/reference/java/lang/Object#notifyAll()() `

Wakes up all threads that are waiting on this object's monitor.
` https://developer.android.com/reference/java/lang/String` ` https://developer.android.com/reference/java/lang/Object#toString()() `

Returns a string representation of the object.
` final void` ` https://developer.android.com/reference/java/lang/Object#wait(long,%20int)(long timeoutMillis, int nanos) `

Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed.
` final void` ` https://developer.android.com/reference/java/lang/Object#wait(long)(long timeoutMillis) `

Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed.
` final void` ` https://developer.android.com/reference/java/lang/Object#wait()() `

Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*.
From interface ` https://developer.android.com/reference/android/os/Parcelable ` ` abstract int` ` https://developer.android.com/reference/android/os/Parcelable#describeContents()() `

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation.
` abstract void` ` https://developer.android.com/reference/android/os/Parcelable#writeToParcel(android.os.Parcel,%20int)(https://developer.android.com/reference/android/os/Parcel dest, int flags) `

Flatten this object in to a Parcel.

## Constants

### ADR_STATE_CYCLE_SLIP

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ADR_STATE_CYCLE_SLIP
```

The state of the `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeMeters()` has a cycle slip detected.

<br />

Constant Value: 4 (0x00000004)

### ADR_STATE_HALF_CYCLE_REPORTED

Added in [API level 28](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ADR_STATE_HALF_CYCLE_REPORTED
```

Reports whether the flag `https://developer.android.com/reference/android/location/GnssMeasurement#ADR_STATE_HALF_CYCLE_RESOLVED` has been reported by the GNSS hardware.

When this bit is set, the value of `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeUncertaintyMeters()` can be low (centimeter level) whether or not the half cycle ambiguity is resolved.

When this bit is unset, the value of `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeUncertaintyMeters()` is larger, to cover the potential error due to half cycle ambiguity being unresolved.

<br />

Constant Value: 16 (0x00000010)

### ADR_STATE_HALF_CYCLE_RESOLVED

Added in [API level 28](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ADR_STATE_HALF_CYCLE_RESOLVED
```

Reports whether the value `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeMeters()` has resolved the half cycle ambiguity.

When this bit is set, the `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeMeters()` corresponds to the carrier phase measurement plus an accumulated integer number of carrier full cycles.

When this bit is unset, the `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeMeters()` corresponds to the carrier phase measurement plus an accumulated integer number of carrier half cycles.

For signals that have databits, the carrier phase tracking loops typically use a costas loop discriminator. This type of tracking loop introduces a half-cycle ambiguity that is resolved by searching through the received data for known patterns of databits (e.g. GPS uses the TLM word) which then determines the polarity of the incoming data and resolves the half-cycle ambiguity.

Before the half-cycle ambiguity has been resolved it is possible that the ADR_STATE_VALID flag is set:

- In cases where ADR_STATE_HALF_CYCLE_REPORTED is not set, the ADR_STATE_HALF_CYCLE_RESOLVED flag will not be available. Here, a half wave length will be added to the returned accumulated delta range uncertainty to indicate the half cycle ambiguity.
- In cases where ADR_STATE_HALF_CYCLE_REPORTED is set, half cycle ambiguity will be indicated via both the ADR_STATE_HALF_CYCLE_RESOLVED flag and as well a half wave length added to the returned accumulated delta range uncertainty.

<br />

<br />

Constant Value: 8 (0x00000008)

### ADR_STATE_RESET

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ADR_STATE_RESET
```

The state of the `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeMeters()` has detected a reset.

<br />

Constant Value: 2 (0x00000002)

### ADR_STATE_UNKNOWN

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ADR_STATE_UNKNOWN
```

The state of the value `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeMeters()` is invalid or unknown.

<br />

Constant Value: 0 (0x00000000)

### ADR_STATE_VALID

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ADR_STATE_VALID
```

The state of the `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeMeters()` is valid.

<br />

Constant Value: 1 (0x00000001)

### CODE_TYPE_A

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String CODE_TYPE_A
```

Code type for: GALILEO E1A, GALILEO E6A, NavIC L5A SPS, NavIC SA SPS, GLONASS G1a L1OCd, GLONASS G2a L2CSI.

<br />

Constant Value: "A"

### CODE_TYPE_B

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String CODE_TYPE_B
```

Code type for: GALILEO E1B, GALILEO E6B, NavIC L5B RS (D), NavIC SB RS (D), GLONASS G1a L1OCp, GLONASS G2a L2OCp, QZSS L1Sb.

<br />

Constant Value: "B"

### CODE_TYPE_C

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String CODE_TYPE_C
```

Code type for: GPS L1 C/A, GPS L2 C/A, GLONASS G1 C/A, GLONASS G2 C/A, GALILEO E1C, GALILEO E6C, SBAS L1 C/A, QZSS L1 C/A, NavIC L5C RS (P), NavIC SC RS (P).

<br />

Constant Value: "C"

### CODE_TYPE_D

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String CODE_TYPE_D
```

Code type for: GPS L2 (L1(C/A) + (P2-P1) (semi-codeless)), QZSS L5S(I), BDS B1C Data, BDS B2a Data, BDS B2b Data, BDS B2 (B2a+B2b) Data, BDS B3a Data, NavIC L1 Data.

<br />

Constant Value: "D"

### CODE_TYPE_E

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String CODE_TYPE_E
```

Code type for: QZSS L1 C/B, QZSS L6E.

<br />

Constant Value: "E"

### CODE_TYPE_I

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String CODE_TYPE_I
```

Code type for: GPS L5 I, GLONASS G3 I, GALILEO E5a I, GALILEO E5b I, GALILEO E5a+b I, SBAS L5 I, QZSS L5 I, BDS B1 I, BDS B2 I, BDS B3 I.

<br />

Constant Value: "I"

### CODE_TYPE_L

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String CODE_TYPE_L
```

Code type for: GPS L1C (P), GPS L2C (L), QZSS L1C (P), QZSS L2C (L), QZSS L6P, BDS B1a Pilot.

<br />

Constant Value: "L"

### CODE_TYPE_M

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String CODE_TYPE_M
```

Code type for: GPS L1M, GPS L2M.

<br />

Constant Value: "M"

### CODE_TYPE_N

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String CODE_TYPE_N
```

Code type for: GPS L1 codeless, GPS L2 codeless.

<br />

Constant Value: "N"

### CODE_TYPE_P

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String CODE_TYPE_P
```

Code type for: GPS L1P, GPS L2P, GLONASS G1P, GLONASS G2P, BDS B1C Pilot, BDS B2a Pilot, BDS B2b Pilot, BDS B2 (B2a+B2b) Pilot, BDS B3a Pilot, QZSS L5S(Q), NavIC L1 Pilot.

<br />

Constant Value: "P"

### CODE_TYPE_Q

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String CODE_TYPE_Q
```

Code type for: GPS L5 Q, GLONASS G3 Q, GALILEO E5a Q, GALILEO E5b Q, GALILEO E5a+b Q, SBAS L5 Q, QZSS L5 Q, BDS B1 Q, BDS B2 Q, BDS B3 Q.

<br />

Constant Value: "Q"

### CODE_TYPE_S

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String CODE_TYPE_S
```

Code type for: GPS L1C (D), GPS L2C (M), QZSS L1C (D), QZSS L2C (M), QZSS L6D, BDS B1a Data.

<br />

Constant Value: "S"

### CODE_TYPE_UNKNOWN

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String CODE_TYPE_UNKNOWN
```

Code type when the code type is unknown.

<br />

Constant Value: "UNKNOWN"

### CODE_TYPE_W

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String CODE_TYPE_W
```

Code type for: GPS L1 Z-tracking, GPS L2 Z-tracking.

<br />

Constant Value: "W"

### CODE_TYPE_X

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String CODE_TYPE_X
```

Code type for: GPS L1C (D+P), GPS L2C (M+L), GPS L5 (I+Q), GLONASS G1a L1OCd+L1OCp, GLONASS G2a L2CSI+L2OCp, GLONASS G3 (I+Q), GALILEO E1 (B+C), GALILEO E5a (I+Q), GALILEO E5b (I+Q), GALILEO E5a+b (I+Q), GALILEO E6 (B+C), SBAS L5 (I+Q), QZSS L1C (D+P), QZSS L2C (M+L), QZSS L5 (I+Q), QZSS L6 (D+P), BDS B1 (I+Q), BDS B1C Data+Pilot, BDS B2a Data+Pilot, BDS B2 (I+Q), BDS B2 (B2a+B2b) Data+Pilot, BDS B3 (I+Q), NavIC L5 (B+C), NavIC S (B+C), NavIC L1 Data+Pilot.

<br />

Constant Value: "X"

### CODE_TYPE_Y

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String CODE_TYPE_Y
```

Code type for: GPS L1Y, GPS L2Y.

<br />

Constant Value: "Y"

### CODE_TYPE_Z

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String CODE_TYPE_Z
```

Code type for: GALILEO E1 (A+B+C), GALILEO E6 (A+B+C), QZSS L1S/L1-SAIF, QZSS L5S (I+Q), QZSS L6(D+E), BDS B1A Data+Pilot, BDS B2b Data+Pilot, BDS B3a Data+Pilot.

<br />

Constant Value: "Z"

### MULTIPATH_INDICATOR_DETECTED

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int MULTIPATH_INDICATOR_DETECTED
```

The measurement shows signs of multi-path.

<br />

Constant Value: 1 (0x00000001)

### MULTIPATH_INDICATOR_NOT_DETECTED

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int MULTIPATH_INDICATOR_NOT_DETECTED
```

The measurement shows no signs of multi-path.

<br />

Constant Value: 2 (0x00000002)

### MULTIPATH_INDICATOR_UNKNOWN

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int MULTIPATH_INDICATOR_UNKNOWN
```

The indicator is not available or the presence or absence of multipath is unknown.

<br />

Constant Value: 0 (0x00000000)

### STATE_2ND_CODE_LOCK

Added in [API level 29](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int STATE_2ND_CODE_LOCK
```

This GNSS measurement's tracking state has secondary code lock.

<br />

Constant Value: 65536 (0x00010000)

### STATE_BDS_D2_BIT_SYNC

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int STATE_BDS_D2_BIT_SYNC
```

This Beidou measurement's tracking state has D2 bit sync.

<br />

Constant Value: 256 (0x00000100)

### STATE_BDS_D2_SUBFRAME_SYNC

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int STATE_BDS_D2_SUBFRAME_SYNC
```

This Beidou measurement's tracking state has D2 sub-frame sync.

<br />

Constant Value: 512 (0x00000200)

### STATE_BIT_SYNC

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int STATE_BIT_SYNC
```

This GNSS measurement's tracking state has bit sync.

<br />

Constant Value: 2 (0x00000002)

### STATE_CODE_LOCK

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int STATE_CODE_LOCK
```

This GNSS measurement's tracking state has code lock.

<br />

Constant Value: 1 (0x00000001)

### STATE_GAL_E1BC_CODE_LOCK

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int STATE_GAL_E1BC_CODE_LOCK
```

This Galileo measurement's tracking state has E1B/C code lock.

<br />

Constant Value: 1024 (0x00000400)

### STATE_GAL_E1B_PAGE_SYNC

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int STATE_GAL_E1B_PAGE_SYNC
```

This Galileo measurement's tracking state has E1B page sync.

<br />

Constant Value: 4096 (0x00001000)

### STATE_GAL_E1C_2ND_CODE_LOCK

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int STATE_GAL_E1C_2ND_CODE_LOCK
```

This Galileo measurement's tracking state has E1C secondary code lock.

<br />

Constant Value: 2048 (0x00000800)

### STATE_GLO_STRING_SYNC

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int STATE_GLO_STRING_SYNC
```

This Glonass measurement's tracking state has string sync.

<br />

Constant Value: 64 (0x00000040)

### STATE_GLO_TOD_DECODED

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int STATE_GLO_TOD_DECODED
```

This Glonass measurement's tracking state has time-of-day decoded.

<br />

Constant Value: 128 (0x00000080)

### STATE_GLO_TOD_KNOWN

Added in [API level 26](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int STATE_GLO_TOD_KNOWN
```

This Glonass measurement's tracking state has time-of-day known, possibly not decoded over the air but has been determined from other sources. If TOD decoded is set then TOD Known will also be set.

<br />

Constant Value: 32768 (0x00008000)

### STATE_MSEC_AMBIGUOUS

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int STATE_MSEC_AMBIGUOUS
```

This GNSS measurement's tracking state contains millisecond ambiguity.

<br />

Constant Value: 16 (0x00000010)

### STATE_SBAS_SYNC

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int STATE_SBAS_SYNC
```

This SBAS measurement's tracking state has whole second level sync.

<br />

Constant Value: 8192 (0x00002000)

### STATE_SUBFRAME_SYNC

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int STATE_SUBFRAME_SYNC
```

This GNSS measurement's tracking state has sub-frame sync.

<br />

Constant Value: 4 (0x00000004)

### STATE_SYMBOL_SYNC

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int STATE_SYMBOL_SYNC
```

This GNSS measurement's tracking state has symbol sync.

<br />

Constant Value: 32 (0x00000020)

### STATE_TOW_DECODED

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int STATE_TOW_DECODED
```

This GNSS measurement's tracking state has time-of-week decoded.

<br />

Constant Value: 8 (0x00000008)

### STATE_TOW_KNOWN

Added in [API level 26](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int STATE_TOW_KNOWN
```

This GNSS measurement's tracking state has time-of-week known, possibly not decoded over the air but has been determined from other sources. If TOW decoded is set then TOW Known will also be set.

<br />

Constant Value: 16384 (0x00004000)

### STATE_UNKNOWN

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int STATE_UNKNOWN
```

This GNSS measurement's tracking state is invalid or unknown.

<br />

Constant Value: 0 (0x00000000)

## Fields

### CREATOR

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final Creator<GnssMeasurement> CREATOR
```

<br />

<br />

## Public methods

### describeContents

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int describeContents ()
```

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. For example, if the object will include a file descriptor in the output of `https://developer.android.com/reference/android/os/Parcelable#writeToParcel(android.os.Parcel,%20int)`, the return value of this method must include the `https://developer.android.com/reference/android/os/Parcelable#CONTENTS_FILE_DESCRIPTOR` bit.

<br />

| Returns ||
|---|---|
| `int` | a bitmask indicating the set of special object types marshaled by this Parcelable object instance. Value is either `0` or - `https://developer.android.com/reference/android/os/Parcelable#CONTENTS_FILE_DESCRIPTOR` |

### getAccumulatedDeltaRangeMeters

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public double getAccumulatedDeltaRangeMeters ()
```

Gets the accumulated delta range since the last channel reset, in meters.

The error estimate for this value is `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeUncertaintyMeters()`.

The availability of the value is represented by `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeState()`.

A positive value indicates that the SV is moving away from the receiver. The sign of `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeMeters()` and its relation to the sign of `https://developer.android.com/reference/android/location/GnssMeasurement#getCarrierPhase()` is given by the equation:

```
         accumulated delta range = -k * carrier phase    (where k is a constant)
```

Similar to the concept of an RTCM "Phaserange", when the accumulated delta range is initially chosen, and whenever it is reset, it will retain the integer nature of the relative carrier phase offset between satellites observed by this receiver, such that the double difference of this value between receivers and satellites may be used, together with integer ambiguity resolution, to determine highly precise relative location between receivers.

The alignment of the phase measurement will not be adjusted by the receiver so the in-phase and quadrature phase components will have a quarter cycle offset as they do when transmitted from the satellites. If the measurement is from a combination of the in-phase and quadrature phase components, then the alignment of the phase measurement will be aligned to the in-phase component.

<br />

| Returns ||
|---|---|
| `double` | <br /> |

### getAccumulatedDeltaRangeState

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getAccumulatedDeltaRangeState ()
```

Gets 'Accumulated Delta Range' state.

This indicates the state of the `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeMeters()` measurement. See the table below for a detailed interpretation of each state.

| ADR_STATE | Time of relevance | Interpretation |
|---|---|---|
| UNKNOWN | ADR(t) | No valid carrier phase information is available at time t. |
| VALID | ADR(t) | Valid carrier phase information is available at time t. This indicates that this measurement can be used as a reference for future measurements. However, to compare it to previous measurements to compute delta range, other bits should be checked. Specifically, it can be used for delta range computation if it is valid and has no reset or cycle slip at this epoch i.e. if VALID_BIT == 1 \&\& CYCLE_SLIP_BIT == 0 \&\& RESET_BIT == 0. |
| RESET | ADR(t) - ADR(t-1) | Carrier phase accumulation has been restarted between current time t and previous time t-1. This indicates that this measurement can be used as a reference for future measurements, but it should not be compared to previous measurements to compute delta range. |
| CYCLE_SLIP | ADR(t) - ADR(t-1) | Cycle slip(s) have been detected between the current time t and previous time t-1. This indicates that this measurement can be used as a reference for future measurements. Clients can use a measurement with a cycle slip to compute delta range against previous measurements at their own risk. |
| HALF_CYCLE_RESOLVED | ADR(t) | Half cycle ambiguity is resolved at time t. |
| HALF_CYCLE_REPORTED | ADR(t) | Half cycle ambiguity is reported at time t. |

<br />

<br />

| Returns ||
|---|---|
| `int` | Value is either `0` or a combination of the following: - `https://developer.android.com/reference/android/location/GnssMeasurement#ADR_STATE_UNKNOWN` - `https://developer.android.com/reference/android/location/GnssMeasurement#ADR_STATE_VALID` - `https://developer.android.com/reference/android/location/GnssMeasurement#ADR_STATE_RESET` - `https://developer.android.com/reference/android/location/GnssMeasurement#ADR_STATE_CYCLE_SLIP` - `https://developer.android.com/reference/android/location/GnssMeasurement#ADR_STATE_HALF_CYCLE_RESOLVED` - `https://developer.android.com/reference/android/location/GnssMeasurement#ADR_STATE_HALF_CYCLE_REPORTED` |

### getAccumulatedDeltaRangeUncertaintyMeters

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public double getAccumulatedDeltaRangeUncertaintyMeters ()
```

Gets the accumulated delta range's uncertainty (1-Sigma) in meters.

The uncertainty is represented as an absolute (single sided) value.

The status of the value is represented by `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeState()`.

<br />

| Returns ||
|---|---|
| `double` | <br /> |

### getAutomaticGainControlLevelDb

Added in [API level 26](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public double getAutomaticGainControlLevelDb ()
```

<br />

**This method was deprecated in API level 33.**   

Use `https://developer.android.com/reference/android/location/GnssMeasurementsEvent#getGnssAutomaticGainControls()` instead.

Gets the Automatic Gain Control level in dB.

AGC acts as a variable gain amplifier adjusting the power of the incoming signal. The AGC level may be used to indicate potential interference. Higher gain (and/or lower input power) shall be output as a positive number. Hence in cases of strong jamming, in the band of this signal, this value will go more negative. This value must be consistent given the same level of the incoming signal power.

Note: Different hardware designs (e.g. antenna, pre-amplification, or other RF HW components) may also affect the typical output of of this value on any given hardware design in an open sky test - the important aspect of this output is that changes in this value are indicative of changes on input signal power in the frequency band for this measurement.

This field is part of the GnssMeasurement object so it is only reported when the GNSS measurement is reported. E.g., when a GNSS signal is too weak to be acquired, the AGC value is not reported.

The value is only available if `https://developer.android.com/reference/android/location/GnssMeasurement#hasAutomaticGainControlLevelDb()` is `true`

<br />

| Returns ||
|---|---|
| `double` | <br /> |

### getBasebandCn0DbHz

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public double getBasebandCn0DbHz ()
```

Gets the baseband carrier-to-noise density in dB-Hz.

Typical range: 10-50 dB-Hz. The range of possible baseband C/N0 values is 0-63 dB-Hz to handle some edge cases.

The value contains the measured C/N0 for the signal at the baseband. This is typically a few dB weaker than the value estimated for C/N0 at the antenna port, which is reported in `https://developer.android.com/reference/android/location/GnssMeasurement#getCn0DbHz()`.

<br />

| Returns ||
|---|---|
| `double` | Value is between 0.0f and 63.0f inclusive <br /> |

### getCarrierCycles

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level 28](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public long getCarrierCycles ()
```

<br />

**This method was deprecated in API level 28.**   

use `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeMeters()` instead.

The number of full carrier cycles between the satellite and the receiver.

The reference frequency is given by the value of `https://developer.android.com/reference/android/location/GnssMeasurement#getCarrierFrequencyHz()`.

The value is only available if `https://developer.android.com/reference/android/location/GnssMeasurement#hasCarrierCycles()` is `true`.

<br />

| Returns ||
|---|---|
| `long` | <br /> |

### getCarrierFrequencyHz

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public float getCarrierFrequencyHz ()
```

Gets the carrier frequency of the tracked signal.

For example it can be the GPS central frequency for L1 = 1575.45 MHz, or L2 = 1227.60 MHz, L5 = 1176.45 MHz, varying GLO channels, etc.

The value is only available if `https://developer.android.com/reference/android/location/GnssMeasurement#hasCarrierFrequencyHz()` is `true`.

<br />

| Returns ||
|---|---|
| `float` | the carrier frequency of the signal tracked in Hz. <br /> |

### getCarrierPhase

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level 28](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public double getCarrierPhase ()
```

<br />

**This method was deprecated in API level 28.**   

use `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeMeters()` instead.

Gets the RF phase detected by the receiver.

Range: \[0.0, 1.0\].

This is the fractional part of the complete carrier phase measurement.

The reference frequency is given by the value of `https://developer.android.com/reference/android/location/GnssMeasurement#getCarrierFrequencyHz()`.

The error estimate for this value is `https://developer.android.com/reference/android/location/GnssMeasurement#getCarrierPhaseUncertainty()`.

The value is only available if `https://developer.android.com/reference/android/location/GnssMeasurement#hasCarrierPhase()` is `true`.

<br />

| Returns ||
|---|---|
| `double` | <br /> |

### getCarrierPhaseUncertainty

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level 28](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public double getCarrierPhaseUncertainty ()
```

<br />

**This method was deprecated in API level 28.**   

use `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeUncertaintyMeters()` instead.

Gets the carrier-phase's uncertainty (1-Sigma).

The uncertainty is represented as an absolute (single sided) value.

The value is only available if `https://developer.android.com/reference/android/location/GnssMeasurement#hasCarrierPhaseUncertainty()` is `true`.

<br />

| Returns ||
|---|---|
| `double` | <br /> |

### getCn0DbHz

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public double getCn0DbHz ()
```

Gets the Carrier-to-noise density in dB-Hz.

Typical range: 10-50 dB-Hz. The range of possible C/N0 values is 0-63 dB-Hz to handle some edge cases.

The value contains the measured C/N0 for the signal at the antenna input.

<br />

| Returns ||
|---|---|
| `double` | Value is between 0.0f and 63.0f inclusive <br /> |

### getCodeType

Added in [API level 29](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public String getCodeType ()
```

Gets the GNSS measurement's code type.

Similar to the Attribute field described in RINEX 4.00, e.g., in Tables 9-16 (see https://igs.org/wg/rinex/#documents-formats).

See the `CODE_TYPE_*` constants for details on what each string represents (e.g., `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_A`, `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_C`, `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_X`).

Returns `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_UNKNOWN` if the GNSS Measurement's code type is unknown.

The code type is used to specify the observation descriptor defined in GNSS Observation Data File Header Section Description in the RINEX standard (Version 4.00). In cases where the code type does not align with the above listed values, the code type from the most recent version of RINEX should be used. For example, if a code type "G" is added, this string shall be set to "G".

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/String` | This value cannot be `null`. Value is one of the following: - `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_A` - `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_B` - `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_C` - `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_D` - `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_E` - `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_I` - `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_L` - `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_M` - `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_N` - `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_P` - `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_Q` - `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_S` - `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_W` - `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_X` - `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_Y` - `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_Z` - `https://developer.android.com/reference/android/location/GnssMeasurement#CODE_TYPE_UNKNOWN` |

### getConstellationType

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getConstellationType ()
```

Gets the constellation type.

The return value is one of those constants with `CONSTELLATION_` prefix in `https://developer.android.com/reference/android/location/GnssStatus`.

<br />

| Returns ||
|---|---|
| `int` | Value is one of the following: - `https://developer.android.com/reference/android/location/GnssStatus#CONSTELLATION_UNKNOWN` - `https://developer.android.com/reference/android/location/GnssStatus#CONSTELLATION_GPS` - `https://developer.android.com/reference/android/location/GnssStatus#CONSTELLATION_SBAS` - `https://developer.android.com/reference/android/location/GnssStatus#CONSTELLATION_GLONASS` - `https://developer.android.com/reference/android/location/GnssStatus#CONSTELLATION_QZSS` - `https://developer.android.com/reference/android/location/GnssStatus#CONSTELLATION_BEIDOU` - `https://developer.android.com/reference/android/location/GnssStatus#CONSTELLATION_GALILEO` - `https://developer.android.com/reference/android/location/GnssStatus#CONSTELLATION_IRNSS` |

### getFullInterSignalBiasNanos

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public double getFullInterSignalBiasNanos ()
```

Gets the GNSS measurement's inter-signal bias in nanoseconds with sub-nanosecond accuracy.

This value is the sum of the estimated receiver-side and the space-segment-side inter-system bias, inter-frequency bias and inter-code bias, including:

- Receiver inter-constellation bias (with respect to the constellation in `https://developer.android.com/reference/android/location/GnssClock#getReferenceConstellationTypeForIsb()`
- Receiver inter-frequency bias (with respect to the carrier frequency in `https://developer.android.com/reference/android/location/GnssClock#getReferenceConstellationTypeForIsb()`
- Receiver inter-code bias (with respect to the code type in `https://developer.android.com/reference/android/location/GnssClock#getReferenceConstellationTypeForIsb()`
- Master clock bias (e.g., GPS-GAL Time Offset (GGTO), GPS-UTC Time Offset (TauGps), BDS-GLO Time Offset (BGTO))(with respect to the constellation in `https://developer.android.com/reference/android/location/GnssClock#getReferenceConstellationTypeForIsb()`
- Group delay (e.g., Total Group Delay (TGD))
- Satellite inter-frequency bias (GLO only) (with respect to the carrier frequency in `https://developer.android.com/reference/android/location/GnssClock#getReferenceConstellationTypeForIsb()`
- Satellite inter-code bias (e.g., Differential Code Bias (DCB)) (with respect to the code type in `https://developer.android.com/reference/android/location/GnssClock#getReferenceConstellationTypeForIsb()`

If a component of the above is already compensated in the provided `https://developer.android.com/reference/android/location/GnssMeasurement#getReceivedSvTimeNanos()`, then it must not be included in the reported full ISB.

The value does not include the inter-frequency Ionospheric bias.

The sign of the value is defined by the following equation:

```
    corrected pseudorange = raw pseudorange - FullInterSignalBiasNanos
```

The value is only available if `https://developer.android.com/reference/android/location/GnssMeasurement#hasFullInterSignalBiasNanos()` is `true`.

<br />

| Returns ||
|---|---|
| `double` | <br /> |

### getFullInterSignalBiasUncertaintyNanos

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public double getFullInterSignalBiasUncertaintyNanos ()
```

Gets the GNSS measurement's inter-signal bias uncertainty (1 sigma) in nanoseconds with sub-nanosecond accuracy.

The value is only available if `https://developer.android.com/reference/android/location/GnssMeasurement#hasFullInterSignalBiasUncertaintyNanos()` is `true`.

<br />

| Returns ||
|---|---|
| `double` | Value is 0.0f or greater <br /> |

### getMultipathIndicator

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getMultipathIndicator ()
```

Gets a value indicating the 'multipath' state of the event.

<br />

| Returns ||
|---|---|
| `int` | Value is one of the following: - `https://developer.android.com/reference/android/location/GnssMeasurement#MULTIPATH_INDICATOR_UNKNOWN` - `https://developer.android.com/reference/android/location/GnssMeasurement#MULTIPATH_INDICATOR_DETECTED` - `https://developer.android.com/reference/android/location/GnssMeasurement#MULTIPATH_INDICATOR_NOT_DETECTED` |

### getPseudorangeRateMetersPerSecond

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public double getPseudorangeRateMetersPerSecond ()
```

Gets the Pseudorange rate at the timestamp in m/s.

The error estimate for this value is `https://developer.android.com/reference/android/location/GnssMeasurement#getPseudorangeRateUncertaintyMetersPerSecond()`.

The value is uncorrected, i.e. corrections for receiver and satellite clock frequency errors are not included.

A positive 'uncorrected' value indicates that the SV is moving away from the receiver. The sign of the 'uncorrected' 'pseudorange rate' and its relation to the sign of 'doppler shift' is given by the equation:

```
     pseudorange rate = -k * doppler shift   (where k is a constant)
```

<br />

<br />

| Returns ||
|---|---|
| `double` | <br /> |

### getPseudorangeRateUncertaintyMetersPerSecond

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public double getPseudorangeRateUncertaintyMetersPerSecond ()
```

Gets the pseudorange's rate uncertainty (1-Sigma) in m/s.

The uncertainty is represented as an absolute (single sided) value.

<br />

| Returns ||
|---|---|
| `double` | <br /> |

### getReceivedSvTimeNanos

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public long getReceivedSvTimeNanos ()
```

Gets the received GNSS satellite time, at the measurement time, in nanoseconds.

The received satellite time is relative to the beginning of the system week for all constellations except for Glonass where it is relative to the beginning of the Glonass system day.

The table below indicates the valid range of the received GNSS satellite time. These ranges depend on the constellation and code being tracked and the state of the tracking algorithms given by the `https://developer.android.com/reference/android/location/GnssMeasurement#getState()` method. The minimum value of this field is zero. The maximum value of this field is determined by looking across all of the state flags that are set, for the given constellation and code type, and finding the the maximum value in this table.

For example, for GPS L1 C/A, if STATE_TOW_KNOWN is set, this field can be any value from 0 to 1 week (in nanoseconds), and for GAL E1B code, if only STATE_GAL_E1BC_CODE_LOCK is set, then this field can be any value from 0 to 4 milliseconds (in nanoseconds.)

|   | **GPS/QZSS** |||| **GLNS** | **BDS** |||| **GAL** ||| **SBAS** | **NavIC** |
| **State Flag** | **L1 C/A** | **L1 C(P)** | **L5I** | **L5Q** | **L1OF** | **B1I (D1)** | **B1I (D2)** | **B1C (P)** | **B2AQ** | **E1B** | **E1C** | **E5AQ** | **L1 C/A** | **L5C** |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| **STATE_UNKNOWN** | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| **STATE_CODE_LOCK** | 1 ms | 10 ms | 1 ms | 1 ms | 1 ms | 1 ms | 1 ms | 10 ms | 1 ms | - | - | 1 ms | 1 ms | 1 ms |
| **STATE_SYMBOL_SYNC** | - | - | 10 ms | - | 10 ms | - | 2 ms | - | - | - | - | - | 2 ms | - |
| **STATE_BIT_SYNC** | 20 ms | - | 20 ms | - | 20 ms | 20 ms | - | - | - | 8 ms | - | - | 4 ms | 20 ms |
| **STATE_SUBFRAME_SYNC** | 6 s | - | 6 s | - | - | 6 s | - | - | 100 ms | - | - | 100 ms | - | 6 s |
| **STATE_TOW_DECODED** | 1 week | - | 1 week | - | - | 1 week | 1 week | - | - | 1 week | 1 week | - | 1 week | 1 week |
| **STATE_TOW_KNOWN** | 1 week | 1 week | 1 week | 1 week | - | 1 week | 1 week | 1 week | 1 week | 1 week | 1 week | 1 week | 1 week | 1 week |
| **STATE_GLO_STRING_SYNC** | - | - | - | - | 2 s | - | - | - | - | - | - | - | - | - |
| **STATE_GLO_TOD_DECODED** | - | - | - | - | 1 day | - | - | - | - | - | - | - | - | - |
| **STATE_GLO_TOD_KNOWN** | - | - | - | - | 1 day | - | - | - | - | - | - | - | - | - |
| **STATE_BDS_D2_BIT_SYNC** | - | - | - | - | - | - | 2 ms | - | - | - | - | - | - | - |
| **STATE_BDS_D2_SUBFRAME_SYNC** | - | - | - | - | - | - | 600 ms | - | - | - | - | - | - | - |
| **STATE_GAL_E1BC_CODE_LOCK** | - | - | - | - | - | - | - | - | - | 4 ms | 4 ms | - | - | - |
| **STATE_GAL_E1C_2ND_CODE_LOCK** | - | - | - | - | - | - | - | - | - | - | 100 ms | - | - | - |
| **STATE_2ND_CODE_LOCK** | - | 18000 ms | 10 ms | 20 ms | - | - | - | 18000 ms | 100 ms | - | - | 100 ms | - | - |
| **STATE_GAL_E1B_PAGE_SYNC** | - | - | - | - | - | - | - | - | - | 2 s | - | - | - | - |
| **STATE_SBAS_SYNC** | - | - | - | - | - | - | - | - | - | - | - | - | 1 s | - |

Note: TOW Known refers to the case where TOW is possibly not decoded over the air but has been determined from other sources. If TOW decoded is set then TOW Known must also be set.

Note well: if there is any ambiguity in integer millisecond, STATE_MSEC_AMBIGUOUS must be set accordingly, in the 'state' field. This value must be populated, unless the 'state' == STATE_UNKNOWN.

Note on optional flags:

- For L1 C/A and B1I, STATE_SYMBOL_SYNC is optional since the symbol length is the same as the bit length.
- For L5Q and E5aQ, STATE_BIT_SYNC and STATE_SYMBOL_SYNC are optional since they are implied by STATE_CODE_LOCK.
- STATE_2ND_CODE_LOCK for L5I is optional since it is implied by STATE_SYMBOL_SYNC.
- STATE_2ND_CODE_LOCK for E1C is optional since it is implied by STATE_GAL_E1C_2ND_CODE_LOCK.
- For E1B and E1C, STATE_SYMBOL_SYNC is optional, because it is implied by STATE_GAL_E1BC_CODE_LOCK.

<br />

<br />

| Returns ||
|---|---|
| `long` | <br /> |

### getReceivedSvTimeUncertaintyNanos

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public long getReceivedSvTimeUncertaintyNanos ()
```

Gets the error estimate (1-sigma) for the received GNSS time, in nanoseconds.

<br />

| Returns ||
|---|---|
| `long` | <br /> |

### getSatelliteInterSignalBiasNanos

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public double getSatelliteInterSignalBiasNanos ()
```

Gets the GNSS measurement's satellite inter-signal bias in nanoseconds with sub-nanosecond accuracy.

This value is the space-segment-side inter-system bias, inter-frequency bias and inter-code bias, including:

- Master clock bias (e.g., GPS-GAL Time Offset (GGTO), GPS-UTC Time Offset (TauGps), BDS-GLO Time Offset (BGTO))(with respect to the constellation in `https://developer.android.com/reference/android/location/GnssClock#getReferenceConstellationTypeForIsb()`
- Group delay (e.g., Total Group Delay (TGD))
- Satellite inter-frequency bias (GLO only) (with respect to the carrier frequency in `https://developer.android.com/reference/android/location/GnssClock#getReferenceConstellationTypeForIsb()`
- Satellite inter-code bias (e.g., Differential Code Bias (DCB)) (with respect to the code type in `https://developer.android.com/reference/android/location/GnssClock#getReferenceConstellationTypeForIsb()`

The sign of the value is defined by the following equation:

```
    corrected pseudorange = raw pseudorange - SatelliteInterSignalBiasNanos
```

The value is only available if `https://developer.android.com/reference/android/location/GnssMeasurement#hasSatelliteInterSignalBiasNanos()` is `true`.

<br />

| Returns ||
|---|---|
| `double` | <br /> |

### getSatelliteInterSignalBiasUncertaintyNanos

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public double getSatelliteInterSignalBiasUncertaintyNanos ()
```

Gets the GNSS measurement's satellite inter-signal bias uncertainty (1 sigma) in nanoseconds with sub-nanosecond accuracy.

The value is only available if `https://developer.android.com/reference/android/location/GnssMeasurement#hasSatelliteInterSignalBiasUncertaintyNanos()` is `true`.

<br />

| Returns ||
|---|---|
| `double` | Value is 0.0f or greater <br /> |

### getSnrInDb

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public double getSnrInDb ()
```

Gets the (post-correlation \& integration) Signal-to-Noise ratio (SNR) in dB.

The value is only available if `https://developer.android.com/reference/android/location/GnssMeasurement#hasSnrInDb()` is `true`.

<br />

| Returns ||
|---|---|
| `double` | <br /> |

### getState

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getState ()
```

Gets per-satellite-signal sync state.

It represents the current sync state for the associated satellite signal.

This value helps interpret `https://developer.android.com/reference/android/location/GnssMeasurement#getReceivedSvTimeNanos()`.

<br />

| Returns ||
|---|---|
| `int` | Value is either `0` or a combination of the following: - `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_CODE_LOCK` - `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_BIT_SYNC` - `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_SUBFRAME_SYNC` - `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_TOW_DECODED` - `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_MSEC_AMBIGUOUS` - `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_SYMBOL_SYNC` - `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_GLO_STRING_SYNC` - `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_GLO_TOD_DECODED` - `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_BDS_D2_BIT_SYNC` - `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_BDS_D2_SUBFRAME_SYNC` - `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_GAL_E1BC_CODE_LOCK` - `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_GAL_E1C_2ND_CODE_LOCK` - `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_GAL_E1B_PAGE_SYNC` - `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_SBAS_SYNC` - `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_TOW_KNOWN` - `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_GLO_TOD_KNOWN` - `https://developer.android.com/reference/android/location/GnssMeasurement#STATE_2ND_CODE_LOCK` |

### getSvid

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getSvid ()
```

Gets the satellite ID.

Interpretation depends on `https://developer.android.com/reference/android/location/GnssMeasurement#getConstellationType()`. See `https://developer.android.com/reference/android/location/GnssStatus#getSvid(int)`.

<br />

| Returns ||
|---|---|
| `int` | <br /> |

### getTimeOffsetNanos

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public double getTimeOffsetNanos ()
```

Gets the time offset at which the measurement was taken in nanoseconds.

The reference receiver's time from which this is offset is specified by `https://developer.android.com/reference/android/location/GnssClock#getTimeNanos()`.

The sign of this value is given by the following equation:

```
     measurement time = TimeNanos + TimeOffsetNanos
```

The value provides an individual time-stamp for the measurement, and allows sub-nanosecond accuracy.

<br />

| Returns ||
|---|---|
| `double` | <br /> |

### hasAutomaticGainControlLevelDb

Added in [API level 26](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean hasAutomaticGainControlLevelDb ()
```

<br />

**This method was deprecated in API level 33.**   

Use `https://developer.android.com/reference/android/location/GnssMeasurementsEvent#getGnssAutomaticGainControls()` instead.

Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getAutomaticGainControlLevelDb()` is available, `false` otherwise.

<br />

| Returns ||
|---|---|
| `boolean` | <br /> |

### hasBasebandCn0DbHz

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean hasBasebandCn0DbHz ()
```

Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getBasebandCn0DbHz()` is available, `false` otherwise.

<br />

| Returns ||
|---|---|
| `boolean` | <br /> |

### hasCarrierCycles

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level 28](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean hasCarrierCycles ()
```

<br />

**This method was deprecated in API level 28.**   

use `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeState()` instead.

Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getCarrierCycles()` is available, `false` otherwise.

<br />

| Returns ||
|---|---|
| `boolean` | <br /> |

### hasCarrierFrequencyHz

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean hasCarrierFrequencyHz ()
```

Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getCarrierFrequencyHz()` is available, `false` otherwise.

<br />

| Returns ||
|---|---|
| `boolean` | <br /> |

### hasCarrierPhase

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level 28](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean hasCarrierPhase ()
```

<br />

**This method was deprecated in API level 28.**   

use `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeState()` instead.

Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getCarrierPhase()` is available, `false` otherwise.

<br />

| Returns ||
|---|---|
| `boolean` | <br /> |

### hasCarrierPhaseUncertainty

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level 28](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean hasCarrierPhaseUncertainty ()
```

<br />

**This method was deprecated in API level 28.**   

use `https://developer.android.com/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeState()` instead.

Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getCarrierPhaseUncertainty()` is available, `false` otherwise.

<br />

| Returns ||
|---|---|
| `boolean` | <br /> |

### hasCodeType

Added in [API level 29](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean hasCodeType ()
```

Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getCodeType()` is available, `false` otherwise.

<br />

| Returns ||
|---|---|
| `boolean` | <br /> |

### hasFullInterSignalBiasNanos

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean hasFullInterSignalBiasNanos ()
```

Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getFullInterSignalBiasNanos()` is available, `false` otherwise.

<br />

| Returns ||
|---|---|
| `boolean` | <br /> |

### hasFullInterSignalBiasUncertaintyNanos

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean hasFullInterSignalBiasUncertaintyNanos ()
```

Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getFullInterSignalBiasUncertaintyNanos()` is available, `false` otherwise.

<br />

| Returns ||
|---|---|
| `boolean` | <br /> |

### hasSatelliteInterSignalBiasNanos

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean hasSatelliteInterSignalBiasNanos ()
```

Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getSatelliteInterSignalBiasNanos()` is available, `false` otherwise.

<br />

| Returns ||
|---|---|
| `boolean` | <br /> |

### hasSatelliteInterSignalBiasUncertaintyNanos

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean hasSatelliteInterSignalBiasUncertaintyNanos ()
```

Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getSatelliteInterSignalBiasUncertaintyNanos()` is available, `false` otherwise.

<br />

| Returns ||
|---|---|
| `boolean` | <br /> |

### hasSnrInDb

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean hasSnrInDb ()
```

Returns `true` if `https://developer.android.com/reference/android/location/GnssMeasurement#getSnrInDb()` is available, `false` otherwise.

<br />

| Returns ||
|---|---|
| `boolean` | <br /> |

### toString

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public String toString ()
```

Returns a string representation of the object.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/String` | a string representation of the object. <br /> |

### writeToParcel

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void writeToParcel (Parcel parcel, 
                int flags)
```

Flatten this object in to a Parcel.

<br />

| Parameters ||
|---|---|
| `parcel` | `Parcel`: The Parcel in which the object should be written. This value cannot be `null`. <br /> |
| `flags` | `int`: Additional flags about how the object should be written. May be 0 or `https://developer.android.com/reference/android/os/Parcelable#PARCELABLE_WRITE_RETURN_VALUE`. Value is either `0` or a combination of the following: - `https://developer.android.com/reference/android/os/Parcelable#PARCELABLE_WRITE_RETURN_VALUE` |