GnssMeasurement.ReceivedSvTimeNanos Property

Definition

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

public long ReceivedSvTimeNanos { [Android.Runtime.Register("getReceivedSvTimeNanos", "()J", "", ApiSince=24)] get; }
[<get: Android.Runtime.Register("getReceivedSvTimeNanos", "()J", "", ApiSince=24)>]
member this.ReceivedSvTimeNanos : int64

Property Value

Attributes

Remarks

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 #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.)

<table border="1"> <thead> <tr> <td /> <td colspan="4"><strong>GPS/QZSS</strong></td> <td><strong>GLNS</strong></td> <td colspan="4"><strong>BDS</strong></td> <td colspan="3"><strong>GAL</strong></td> <td><strong>SBAS</strong></td> <td><strong>IRNSS</strong></td> </tr> <tr> <td><strong>State Flag</strong></td> <td><strong>L1 C/A</strong></td> <td><strong>L1 C(P)</strong></td> <td><strong>L5I</strong></td> <td><strong>L5Q</strong></td> <td><strong>L1OF</strong></td> <td><strong>B1I (D1)</strong></td> <td><strong>B1I (D2)</strong></td> <td><strong>B1C (P)</strong></td> <td><strong>B2AQ </strong></td> <td><strong>E1B</strong></td> <td><strong>E1C</strong></td> <td><strong>E5AQ</strong></td> <td><strong>L1 C/A</strong></td> <td><strong>L5C</strong></td> </tr> </thead> <tbody> <tr> <td> <strong>STATE_UNKNOWN</strong> </td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> </tr> <tr> <td> <strong>STATE_CODE_LOCK</strong> </td> <td>1 ms</td> <td>10 ms</td> <td>1 ms</td> <td>1 ms</td> <td>1 ms</td> <td>1 ms</td> <td>1 ms</td> <td>10 ms</td> <td>1 ms</td> <td>-</td> <td>-</td> <td>1 ms</td> <td>1 ms</td> <td>1 ms</td> </tr> <tr> <td> <strong>STATE_SYMBOL_SYNC</strong> </td> <td>-</td> <td>-</td> <td>10 ms</td> <td>-</td> <td>10 ms</td> <td>-</td> <td>2 ms</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>2 ms</td> <td>-</td> </tr> <tr> <td> <strong>STATE_BIT_SYNC</strong> </td> <td>20 ms</td> <td>-</td> <td>20 ms</td> <td>-</td> <td>20 ms</td> <td>20 ms</td> <td>-</td> <td>-</td> <td>-</td> <td>8 ms</td> <td>-</td> <td>-</td> <td>4 ms</td> <td>20 ms</td> </tr> <tr> <td> <strong>STATE_SUBFRAME_SYNC</strong> </td> <td>6 s</td> <td>-</td> <td>6 s</td> <td>-</td> <td>-</td> <td>6 s</td> <td>-</td> <td>-</td> <td>100 ms</td> <td>-</td> <td>-</td> <td>100 ms</td> <td>-</td> <td>6 s</td> </tr> <tr> <td> <strong>STATE_TOW_DECODED</strong> </td> <td>1 week</td> <td>-</td> <td>1 week</td> <td>-</td> <td>-</td> <td>1 week</td> <td>1 week</td> <td>-</td> <td>-</td> <td>1 week</td> <td>1 week</td> <td>-</td> <td>1 week</td> <td>1 week</td> </tr> <tr> <td> <strong>STATE_TOW_KNOWN</strong> </td> <td>1 week</td> <td>1 week</td> <td>1 week</td> <td>1 week</td> <td>-</td> <td>1 week</td> <td>1 week</td> <td>1 week</td> <td>1 week</td> <td>1 week</td> <td>1 week</td> <td>1 week</td> <td>1 week</td> <td>1 week</td> </tr> <tr> <td> <strong>STATE_GLO_STRING_SYNC</strong> </td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>2 s</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> </tr> <tr> <td> <strong>STATE_GLO_TOD_DECODED</strong> </td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>1 day</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> </tr> <tr> <td> <strong>STATE_GLO_TOD_KNOWN</strong> </td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>1 day</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> </tr> <tr> <td> <strong>STATE_BDS_D2_BIT_SYNC</strong> </td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>2 ms</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> </tr> <tr> <td> <strong>STATE_BDS_D2_SUBFRAME_SYNC</strong> </td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>600 ms</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> </tr> <tr> <td> <strong>STATE_GAL_E1BC_CODE_LOCK</strong> </td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>4 ms</td> <td>4 ms</td> <td>-</td> <td>-</td> <td>-</td> </tr> <tr> <td> <strong>STATE_GAL_E1C_2ND_CODE_LOCK</strong> </td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>100 ms</td> <td>-</td> <td>-</td> <td>-</td> </tr> <tr> <td> <strong>STATE_2ND_CODE_LOCK</strong> </td> <td>-</td> <td>18000 ms</td> <td>10 ms</td> <td>20 ms</td> <td>-</td> <td>-</td> <td>-</td> <td>18000 ms</td> <td>100 ms</td> <td>-</td> <td>-</td> <td>100 ms</td> <td>-</td> <td>-</td> </tr> <tr> <td> <strong>STATE_GAL_E1B_PAGE_SYNC</strong> </td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>2 s</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> </tr> <tr> <td> <strong>STATE_SBAS_SYNC</strong> </td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> <td>1 s</td> <td>-</td> </tr> </tbody> </table>

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: <ul> <li> For L1 C/A and B1I, STATE_SYMBOL_SYNC is optional since the symbol length is the same as the bit length. <li> For L5Q and E5aQ, STATE_BIT_SYNC and STATE_SYMBOL_SYNC are optional since they are implied by STATE_CODE_LOCK. <li> STATE_2ND_CODE_LOCK for L5I is optional since it is implied by STATE_SYMBOL_SYNC. <li> STATE_2ND_CODE_LOCK for E1C is optional since it is implied by STATE_GAL_E1C_2ND_CODE_LOCK. <li> For E1B and E1C, STATE_SYMBOL_SYNC is optional, because it is implied by STATE_GAL_E1BC_CODE_LOCK. </ul>

Java documentation for android.location.GnssMeasurement.getReceivedSvTimeNanos().

Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.

Applies to