public final class GnssMeasurement
extends Object
implements Parcelable
java.lang.Object | |
↳ | android.location.GnssMeasurement |
代表GNSS卫星测量的类别,包含原始和计算的信息。
Constants |
|
---|---|
int |
ADR_STATE_CYCLE_SLIP '累计差值范围'的状态有一个周跳检测。 |
int |
ADR_STATE_RESET “累计差值范围”的状态已检测到重置。 |
int |
ADR_STATE_UNKNOWN “累计差值范围”的状态无效或未知。 |
int |
ADR_STATE_VALID “累计差值范围”的状态是有效的。 |
int |
MULTIPATH_INDICATOR_DETECTED 测量显示多路径的迹象。 |
int |
MULTIPATH_INDICATOR_NOT_DETECTED 测量显示没有多路径的迹象。 |
int |
MULTIPATH_INDICATOR_UNKNOWN 该指标不可用或存在或不存在多路径未知。 |
int |
STATE_BDS_D2_BIT_SYNC 此北斗测量的跟踪状态具有D2位同步。 |
int |
STATE_BDS_D2_SUBFRAME_SYNC 此北斗测量的跟踪状态具有D2子帧同步。 |
int |
STATE_BIT_SYNC 该GNSS测量的跟踪状态具有比特同步。 |
int |
STATE_CODE_LOCK 这个GNSS测量的跟踪状态有代码锁定。 |
int |
STATE_GAL_E1BC_CODE_LOCK 这个伽利略测量的跟踪状态具有E1B / C码锁定。 |
int |
STATE_GAL_E1B_PAGE_SYNC 这个伽利略测量的跟踪状态具有E1B页面同步。 |
int |
STATE_GAL_E1C_2ND_CODE_LOCK 此伽利略测量的跟踪状态具有E1C二级密码锁定。 |
int |
STATE_GLO_STRING_SYNC 这个Glonass测量的跟踪状态具有字符串同步。 |
int |
STATE_GLO_TOD_DECODED 这个Glonass测量的跟踪状态具有时间解码。 |
int |
STATE_MSEC_AMBIGUOUS 该GNSS测量的跟踪状态包含毫秒含糊。 |
int |
STATE_SBAS_SYNC 该SBAS测量的跟踪状态具有全二级同步。 |
int |
STATE_SUBFRAME_SYNC 该GNSS测量的跟踪状态具有子帧同步。 |
int |
STATE_SYMBOL_SYNC 此GNSS测量的跟踪状态具有符号同步。 |
int |
STATE_TOW_DECODED 此GNSS测量的跟踪状态具有时间解码。 |
int |
STATE_UNKNOWN 此GNSS测量的跟踪状态无效或未知。 |
Inherited constants |
---|
From interface android.os.Parcelable
|
Fields |
|
---|---|
public static final Creator<GnssMeasurement> |
CREATOR |
Public methods |
|
---|---|
int |
describeContents() 描述此Parcelable实例的封送表示中包含的特殊对象的种类。 |
double |
getAccumulatedDeltaRangeMeters() 获取自上次通道重置以来的累计增量范围,单位为米。 |
int |
getAccumulatedDeltaRangeState() 获取“累计增量范围”状态。 |
double |
getAccumulatedDeltaRangeUncertaintyMeters() 获得以米为单位的累积增量范围的不确定性(1-Sigma)。 |
long |
getCarrierCycles() 卫星和接收机之间的全载波周期数。 |
float |
getCarrierFrequencyHz() 获取代码和消息调制的载波频率。 |
double |
getCarrierPhase() 获取接收器检测到的RF相位。 |
double |
getCarrierPhaseUncertainty() 获取载波相位的不确定性(1-Sigma)。 |
double |
getCn0DbHz() 获取以dB-Hz为单位的载噪比密度。 |
int |
getConstellationType() 获取星座类型。 |
int |
getMultipathIndicator() 获取指示事件“多路径”状态的值。 |
double |
getPseudorangeRateMetersPerSecond() 获得时间戳中的伪距速率,单位为m / s。 |
double |
getPseudorangeRateUncertaintyMetersPerSecond() 获取伪距的速率不确定性(1-Sigma),单位为m / s。 |
long |
getReceivedSvTimeNanos() 在测量时间内,以纳秒为单位获取收到的GNSS卫星时间。 |
long |
getReceivedSvTimeUncertaintyNanos() 获取接收到的GNSS时间的误差估计值(1-sigma),单位为纳秒。 |
double |
getSnrInDb() 获取以dB为单位的信噪比(SNR)。 |
int |
getState() 获取每个卫星的同步状态。 |
int |
getSvid() 获取卫星ID。 |
double |
getTimeOffsetNanos() 获取以纳秒为单位进行测量的时间偏移。 |
boolean |
hasCarrierCycles() 返回 |
boolean |
hasCarrierFrequencyHz() 返回 |
boolean |
hasCarrierPhase() 返回 |
boolean |
hasCarrierPhaseUncertainty() 返回 |
boolean |
hasSnrInDb() 返回 |
String |
toString() 返回对象的字符串表示形式。 |
void |
writeToParcel(Parcel parcel, int flags) 将此对象平铺到一个包裹中。 |
Inherited methods |
|
---|---|
From class java.lang.Object
|
|
From interface android.os.Parcelable
|
int ADR_STATE_CYCLE_SLIP
'累计差值范围'的状态有一个周跳检测。
常量值:4(0x00000004)
int MULTIPATH_INDICATOR_DETECTED
测量显示多路径的迹象。
常数值:1(0x00000001)
int MULTIPATH_INDICATOR_NOT_DETECTED
测量显示没有多路径的迹象。
常量值:2(0x00000002)
int MULTIPATH_INDICATOR_UNKNOWN
该指标不可用或存在或不存在多路径未知。
常量值:0(0x00000000)
int STATE_BDS_D2_BIT_SYNC
此北斗测量的跟踪状态具有D2位同步。
常量值:256(0x00000100)
int STATE_BDS_D2_SUBFRAME_SYNC
此北斗测量的跟踪状态具有D2子帧同步。
常量值:512(0x00000200)
int STATE_GAL_E1BC_CODE_LOCK
这个伽利略测量的跟踪状态具有E1B / C码锁定。
常量值:1024(0x00000400)
int STATE_GAL_E1B_PAGE_SYNC
这个伽利略测量的跟踪状态具有E1B页面同步。
常量值:4096(0x00001000)
int STATE_GAL_E1C_2ND_CODE_LOCK
此伽利略测量的跟踪状态具有E1C二级密码锁定。
常量值:2048(0x00000800)
int STATE_GLO_STRING_SYNC
这个Glonass测量的跟踪状态具有字符串同步。
常量值:64(0x00000040)
int STATE_GLO_TOD_DECODED
这个Glonass测量的跟踪状态具有时间解码。
常量值:128(0x00000080)
int STATE_MSEC_AMBIGUOUS
该GNSS测量的跟踪状态包含毫秒含糊。
常量值:16(0x00000010)
int STATE_SUBFRAME_SYNC
该GNSS测量的跟踪状态具有子帧同步。
常量值:4(0x00000004)
int STATE_SYMBOL_SYNC
此GNSS测量的跟踪状态具有符号同步。
常量值:32(0x00000020)
int describeContents ()
描述此Parcelable实例的封送表示中包含的特殊对象的种类。 例如,如果对象在writeToParcel(Parcel, int)
的输出中包含writeToParcel(Parcel, int)
,则此方法的返回值必须包含CONTENTS_FILE_DESCRIPTOR
位。
Returns | |
---|---|
int |
a bitmask indicating the set of special object types marshaled by this Parcelable object instance. |
double getAccumulatedDeltaRangeMeters ()
获取自上次通道重置以来的累计增量范围,单位为米。
此值的错误估计值为 getAccumulatedDeltaRangeUncertaintyMeters()
。
值的可用性由 getAccumulatedDeltaRangeState()
表示。
正值表示SV正在远离接收器。 的标志getAccumulatedDeltaRangeMeters()
及其关系的符号getCarrierPhase()
由下式给出:
accumulated delta range = -k * carrier phase (where k is a constant)
Returns | |
---|---|
double |
int getAccumulatedDeltaRangeState ()
获取“累计增量范围”状态。
它表示 getAccumulatedDeltaRangeMeters()
是重置还是有周 getAccumulatedDeltaRangeMeters()
(表示'失锁')。
Returns | |
---|---|
int |
double getAccumulatedDeltaRangeUncertaintyMeters ()
获得以米为单位的累积增量范围的不确定性(1-Sigma)。
不确定性表示为绝对(单面)值。
值的状态由 getAccumulatedDeltaRangeState()
表示。
Returns | |
---|---|
double |
long getCarrierCycles ()
卫星和接收机之间的全载波周期数。
参考频率由 getCarrierFrequencyHz()
的值 getCarrierFrequencyHz()
。
该值仅在 hasCarrierCycles()
为 true
可用。
Returns | |
---|---|
long |
float getCarrierFrequencyHz ()
获取代码和消息调制的载波频率。
对于GPS,例如,它可以是L1或L2。 如果该字段未设置,则它是主要的常用频率,例如GPS用于L1。
该值仅在 hasCarrierFrequencyHz()
为 true
可用。
Returns | |
---|---|
float |
double getCarrierPhase ()
获取接收器检测到的RF相位。
范围:[0.0,1.0]。
这是完整的载波相位测量的分数部分。
参考频率由 getCarrierFrequencyHz()
的值 getCarrierFrequencyHz()
。
此值的错误估计值为 getCarrierPhaseUncertainty()
。
该值仅在 hasCarrierPhase()
为 true
可用。
Returns | |
---|---|
double |
double getCarrierPhaseUncertainty ()
获取载波相位的不确定性(1-Sigma)。
不确定性表示为绝对(单面)值。
该值仅在 hasCarrierPhaseUncertainty()
为 true
可用。
Returns | |
---|---|
double |
double getCn0DbHz ()
获取以dB-Hz为单位的载噪比密度。
典型范围:10-50 db-Hz。
该值包含天线输入信号的测量C / N0。
Returns | |
---|---|
double |
int getConstellationType ()
获取星座类型。
返回值是 CONSTELLATION_
中包含 CONSTELLATION_
前缀的那些常量 GnssStatus
。
Returns | |
---|---|
int |
int getMultipathIndicator ()
获取指示事件“多路径”状态的值。
Returns | |
---|---|
int |
double getPseudorangeRateMetersPerSecond ()
获得时间戳中的伪距速率,单位为m / s。
此值的错误估计值为 getPseudorangeRateUncertaintyMetersPerSecond()
。
该值未校正,即不包括对接收机和卫星时钟频率误差的校正。
正值“未校正”值表示SV正在远离接收器。 '未校正的''伪距率'的符号及其与'多普勒频移'符号的关系由下式给出:
pseudorange rate = -k * doppler shift (where k is a constant)
Returns | |
---|---|
double |
double getPseudorangeRateUncertaintyMetersPerSecond ()
获取伪距的速率不确定性(1-Sigma),单位为m / s。
不确定性表示为绝对(单面)值。
Returns | |
---|---|
double |
long getReceivedSvTimeNanos ()
在测量时间内,以纳秒为单位获取收到的GNSS卫星时间。
对于GPS&QZSS,这是:
考虑到可以实现的最高同步状态,对于每个卫星,该字段的有效范围可以是:
Searching : [ 0 ] : STATE_UNKNOWN C/A code lock : [ 0 1ms ] : STATE_CODE_LOCK is set Bit sync : [ 0 20ms ] : STATE_BIT_SYNC is set Subframe sync : [ 0 6s ] : STATE_SUBFRAME_SYNC is set TOW decoded : [ 0 1week ] : STATE_TOW_DECODED is set
请注意:如果在整数毫秒中有任何不明确的地方,应该在'state'字段中相应地设置 STATE_MSEC_AMBIGUOUS
。
如果'状态'!= STATE_UNKNOWN
这个值必须被填充。
对于Glonass来说,这是:
考虑到可以实现的最高同步状态,对于每个卫星,该字段的有效范围可以是:
Searching : [ 0 ] : STATE_UNKNOWN C/A code lock : [ 0 1ms ] : STATE_CODE_LOCK is set Symbol sync : [ 0 10ms ] : STATE_SYMBOL_SYNC is set Bit sync : [ 0 20ms ] : STATE_BIT_SYNC is set String sync : [ 0 2s ] : STATE_GLO_STRING_SYNC is set Time of day : [ 0 1day ] : STATE_GLO_TOD_DECODED is set
对于北斗来说,这是:
考虑到可以实现的最高同步状态,对于每个卫星,该字段的有效范围可以是:
Searching : [ 0 ] : STATE_UNKNOWN C/A code lock : [ 0 1ms ] : STATE_CODE_LOCK is set Bit sync (D2) : [ 0 2ms ] : STATE_BDS_D2_BIT_SYNC is set Bit sync (D1) : [ 0 20ms ] : STATE_BIT_SYNC is set Subframe (D2) : [ 0 0.6s ] : STATE_BDS_D2_SUBFRAME_SYNC is set Subframe (D1) : [ 0 6s ] : STATE_SUBFRAME_SYNC is set Time of week : [ 0 1week ] : STATE_TOW_DECODED is set
对于伽利略来说,这是:
E1BC code lock : [ 0 4ms ] : STATE_GAL_E1BC_CODE_LOCK is set E1C 2nd code lock: [ 0 100ms ] : STATE_GAL_E1C_2ND_CODE_LOCK is set E1B page : [ 0 2s ] : STATE_GAL_E1B_PAGE_SYNC is set Time of week : [ 0 1week ] : STATE_GAL_TOW_DECODED is set
对于SBAS,这是:
考虑到可以实现的最高同步状态,对于每个卫星,该字段的有效范围可以是:
Searching : [ 0 ] : STATE_UNKNOWN C/A code lock : [ 0 1ms ] : STATE_CODE_LOCK is set Symbol sync : [ 0 2ms ] : STATE_SYMBOL_SYNC is set Message : [ 0 1s ] : STATE_SBAS_SYNC is set
Returns | |
---|---|
long |
long getReceivedSvTimeUncertaintyNanos ()
获取接收到的GNSS时间的误差估计值(1-sigma),单位为纳秒。
Returns | |
---|---|
long |
double getSnrInDb ()
获取以dB为单位的信噪比(SNR)。
该值仅在 hasSnrInDb()
为 true
可用。
Returns | |
---|---|
double |
int getState ()
获取每个卫星的同步状态。
它表示相关卫星的当前同步状态。
该值有助于解释 getReceivedSvTimeNanos()
。
Returns | |
---|---|
int |
int getSvid ()
获取卫星ID。
解释取决于getConstellationType()
。 见getSvid(int)
。
Returns | |
---|---|
int |
double getTimeOffsetNanos ()
获取以纳秒为单位进行测量的时间偏移。
参考接收器的偏移时间由 getTimeNanos()
指定。
该值的符号由以下等式给出:
measurement time = TimeNanos + TimeOffsetNanos
该值为测量提供单独的时间戳,并允许亚纳秒精度。
Returns | |
---|---|
double |
boolean hasCarrierCycles ()
返回 true
如果 getCarrierCycles()
可用, false
否则。
Returns | |
---|---|
boolean |
boolean hasCarrierFrequencyHz ()
返回 true
如果 getCarrierFrequencyHz()
可用, false
否则。
Returns | |
---|---|
boolean |
boolean hasCarrierPhase ()
返回 true
如果 getCarrierPhase()
可用, false
否则。
Returns | |
---|---|
boolean |
boolean hasCarrierPhaseUncertainty ()
返回 true
如果 getCarrierPhaseUncertainty()
可用, false
否则。
Returns | |
---|---|
boolean |
boolean hasSnrInDb ()
返回 true
如果 getSnrInDb()
可用, false
否则。
Returns | |
---|---|
boolean |
String toString ()
返回对象的字符串表示形式。 通常, toString
方法会返回一个“文本地表示”该对象的字符串。 结果应该是一个简洁但内容丰富的表述,对于一个人来说很容易阅读。 建议所有子类重写此方法。
类Object
的toString
方法返回一个字符串,其中包含对象为实例的类的名称,符号字符“ @
”以及对象的哈希代码的无符号十六进制表示形式。 换句话说,这个方法返回一个字符串,其值等于:
getClass().getName() + '@' + Integer.toHexString(hashCode())
Returns | |
---|---|
String |
a string representation of the object. |
void writeToParcel (Parcel parcel, int flags)
将此对象平铺到一个包裹中。
Parameters | |
---|---|
parcel |
Parcel : The Parcel in which the object should be written. |
flags |
int : Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE . |