Rename Gps to Gnss for measurement-related APIs

Bug: 26895757
Change-Id: I12d89dc251e356cf976a4bcd3589a8925a8ad745
This commit is contained in:
Lifu Tang
2016-02-01 01:52:00 -08:00
parent 59235e66a5
commit 818aa2c2c4
22 changed files with 568 additions and 566 deletions

View File

@@ -335,8 +335,8 @@ LOCAL_SRC_FILES += \
location/java/android/location/IGeofenceProvider.aidl \
location/java/android/location/IGnssStatusListener.aidl \
location/java/android/location/IGnssStatusProvider.aidl \
location/java/android/location/IGpsMeasurementsListener.aidl \
location/java/android/location/IGpsNavigationMessageListener.aidl \
location/java/android/location/IGnssMeasurementsListener.aidl \
location/java/android/location/IGnssNavigationMessageListener.aidl \
location/java/android/location/ILocationListener.aidl \
location/java/android/location/ILocationManager.aidl \
location/java/android/location/IFusedGeofenceHardware.aidl \

View File

@@ -19111,38 +19111,7 @@ package android.location {
method public static boolean isPresent();
}
public abstract interface GnssNmeaListener {
method public abstract void onNmeaReceived(long, java.lang.String);
}
public final class GnssStatus {
method public float getAzimuth(int);
method public int getConstellationType(int);
method public float getElevation(int);
method public int getNumSatellites();
method public int getPrn(int);
method public float getSnr(int);
method public boolean hasAlmanac(int);
method public boolean hasEphemeris(int);
method public boolean usedInFix(int);
field public static final int CONSTELLATION_BEIDOU = 5; // 0x5
field public static final int CONSTELLATION_GALILEO = 6; // 0x6
field public static final int CONSTELLATION_GLONASS = 3; // 0x3
field public static final int CONSTELLATION_GPS = 1; // 0x1
field public static final int CONSTELLATION_QZSS = 4; // 0x4
field public static final int CONSTELLATION_SBAS = 2; // 0x2
field public static final int CONSTELLATION_UNKNOWN = 0; // 0x0
}
public abstract class GnssStatusCallback {
ctor public GnssStatusCallback();
method public void onFirstFix(int);
method public void onSatelliteStatusChanged(android.location.GnssStatus);
method public void onStarted();
method public void onStopped();
}
public final class GpsClock implements android.os.Parcelable {
public final class GnssClock implements android.os.Parcelable {
method public int describeContents();
method public double getBiasInNs();
method public double getBiasUncertaintyInNs();
@@ -19169,7 +19138,7 @@ package android.location {
method public void resetFullBiasInNs();
method public void resetLeapSecond();
method public void resetTimeUncertaintyInNs();
method public void set(android.location.GpsClock);
method public void set(android.location.GnssClock);
method public void setBiasInNs(double);
method public void setBiasUncertaintyInNs(double);
method public void setDriftInNsPerSec(double);
@@ -19184,13 +19153,13 @@ package android.location {
field public static final byte CLOCK_TYPE_GPS_TIME = 2; // 0x2
field public static final byte CLOCK_TYPE_LOCAL_HW_TIME = 1; // 0x1
field public static final byte CLOCK_TYPE_UNKNOWN = 0; // 0x0
field public static final android.os.Parcelable.Creator<android.location.GpsClock> CREATOR;
field public static final android.os.Parcelable.Creator<android.location.GnssClock> CREATOR;
}
public static abstract class GpsClock.GpsClockType implements java.lang.annotation.Annotation {
public static abstract class GnssClock.GnssClockType implements java.lang.annotation.Annotation {
}
public final class GpsMeasurement implements android.os.Parcelable {
public final class GnssMeasurement implements android.os.Parcelable {
method public int describeContents();
method public double getAccumulatedDeltaRangeInMeters();
method public short getAccumulatedDeltaRangeState();
@@ -19261,7 +19230,7 @@ package android.location {
method public void resetPseudorangeUncertaintyInMeters();
method public void resetSnrInDb();
method public void resetTimeFromLastBitInMs();
method public void set(android.location.GpsMeasurement);
method public void set(android.location.GnssMeasurement);
method public void setAccumulatedDeltaRangeInMeters(double);
method public void setAccumulatedDeltaRangeState(short);
method public void setAccumulatedDeltaRangeUncertaintyInMeters(double);
@@ -19300,7 +19269,7 @@ package android.location {
field public static final short ADR_STATE_RESET = 2; // 0x2
field public static final short ADR_STATE_UNKNOWN = 0; // 0x0
field public static final short ADR_STATE_VALID = 1; // 0x1
field public static final android.os.Parcelable.Creator<android.location.GpsMeasurement> CREATOR;
field public static final android.os.Parcelable.Creator<android.location.GnssMeasurement> CREATOR;
field public static final byte LOSS_OF_LOCK_CYCLE_SLIP = 2; // 0x2
field public static final byte LOSS_OF_LOCK_OK = 1; // 0x1
field public static final byte LOSS_OF_LOCK_UNKNOWN = 0; // 0x0
@@ -19315,34 +19284,34 @@ package android.location {
field public static final short STATE_UNKNOWN = 0; // 0x0
}
public static abstract class GpsMeasurement.LossOfLockStatus implements java.lang.annotation.Annotation {
public static abstract class GnssMeasurement.LossOfLockStatus implements java.lang.annotation.Annotation {
}
public static abstract class GpsMeasurement.MultipathIndicator implements java.lang.annotation.Annotation {
public static abstract class GnssMeasurement.MultipathIndicator implements java.lang.annotation.Annotation {
}
public final class GpsMeasurementsEvent implements android.os.Parcelable {
ctor public GpsMeasurementsEvent(android.location.GpsClock, android.location.GpsMeasurement[]);
public final class GnssMeasurementsEvent implements android.os.Parcelable {
ctor public GnssMeasurementsEvent(android.location.GnssClock, android.location.GnssMeasurement[]);
method public int describeContents();
method public android.location.GpsClock getClock();
method public java.util.Collection<android.location.GpsMeasurement> getMeasurements();
method public android.location.GnssClock getClock();
method public java.util.Collection<android.location.GnssMeasurement> getMeasurements();
method public void writeToParcel(android.os.Parcel, int);
field public static final android.os.Parcelable.Creator<android.location.GpsMeasurementsEvent> CREATOR;
field public static final android.os.Parcelable.Creator<android.location.GnssMeasurementsEvent> CREATOR;
field public static final int STATUS_GPS_LOCATION_DISABLED = 2; // 0x2
field public static final int STATUS_NOT_SUPPORTED = 0; // 0x0
field public static final int STATUS_READY = 1; // 0x1
}
public static abstract class GpsMeasurementsEvent.Callback {
ctor public GpsMeasurementsEvent.Callback();
method public void onGpsMeasurementsReceived(android.location.GpsMeasurementsEvent);
public static abstract class GnssMeasurementsEvent.Callback {
ctor public GnssMeasurementsEvent.Callback();
method public void onGnssMeasurementsReceived(android.location.GnssMeasurementsEvent);
method public void onStatusChanged(int);
}
public static abstract class GpsMeasurementsEvent.GpsMeasurementsStatus implements java.lang.annotation.Annotation {
public static abstract class GnssMeasurementsEvent.GnssMeasurementsStatus implements java.lang.annotation.Annotation {
}
public final class GpsNavigationMessage implements android.os.Parcelable {
public final class GnssNavigationMessage implements android.os.Parcelable {
method public int describeContents();
method public byte[] getData();
method public short getMessageId();
@@ -19351,7 +19320,7 @@ package android.location {
method public short getSubmessageId();
method public byte getType();
method public void reset();
method public void set(android.location.GpsNavigationMessage);
method public void set(android.location.GnssNavigationMessage);
method public void setData(byte[]);
method public void setMessageId(short);
method public void setPrn(byte);
@@ -19359,7 +19328,7 @@ package android.location {
method public void setSubmessageId(short);
method public void setType(byte);
method public void writeToParcel(android.os.Parcel, int);
field public static final android.os.Parcelable.Creator<android.location.GpsNavigationMessage> CREATOR;
field public static final android.os.Parcelable.Creator<android.location.GnssNavigationMessage> CREATOR;
field public static final byte MESSAGE_TYPE_CNAV2 = 4; // 0x4
field public static final byte MESSAGE_TYPE_L1CA = 1; // 0x1
field public static final byte MESSAGE_TYPE_L2CNAV = 2; // 0x2
@@ -19370,27 +19339,58 @@ package android.location {
field public static final short STATUS_UNKNOWN = 0; // 0x0
}
public static abstract class GpsNavigationMessage.GpsNavigationMessageType implements java.lang.annotation.Annotation {
public static abstract class GnssNavigationMessage.GnssNavigationMessageType implements java.lang.annotation.Annotation {
}
public final class GpsNavigationMessageEvent implements android.os.Parcelable {
ctor public GpsNavigationMessageEvent(android.location.GpsNavigationMessage);
public final class GnssNavigationMessageEvent implements android.os.Parcelable {
ctor public GnssNavigationMessageEvent(android.location.GnssNavigationMessage);
method public int describeContents();
method public android.location.GpsNavigationMessage getNavigationMessage();
method public android.location.GnssNavigationMessage getNavigationMessage();
method public void writeToParcel(android.os.Parcel, int);
field public static final android.os.Parcelable.Creator<android.location.GpsNavigationMessageEvent> CREATOR;
field public static final android.os.Parcelable.Creator<android.location.GnssNavigationMessageEvent> CREATOR;
field public static final int STATUS_GPS_LOCATION_DISABLED = 2; // 0x2
field public static final int STATUS_NOT_SUPPORTED = 0; // 0x0
field public static final int STATUS_READY = 1; // 0x1
}
public static abstract class GpsNavigationMessageEvent.Callback {
ctor public GpsNavigationMessageEvent.Callback();
method public void onGpsNavigationMessageReceived(android.location.GpsNavigationMessageEvent);
public static abstract class GnssNavigationMessageEvent.Callback {
ctor public GnssNavigationMessageEvent.Callback();
method public void onGnssNavigationMessageReceived(android.location.GnssNavigationMessageEvent);
method public void onStatusChanged(int);
}
public static abstract class GpsNavigationMessageEvent.GpsNavigationMessageStatus implements java.lang.annotation.Annotation {
public static abstract class GnssNavigationMessageEvent.GnssNavigationMessageStatus implements java.lang.annotation.Annotation {
}
public abstract interface GnssNmeaListener {
method public abstract void onNmeaReceived(long, java.lang.String);
}
public final class GnssStatus {
method public float getAzimuth(int);
method public int getConstellationType(int);
method public float getElevation(int);
method public int getNumSatellites();
method public int getPrn(int);
method public float getSnr(int);
method public boolean hasAlmanac(int);
method public boolean hasEphemeris(int);
method public boolean usedInFix(int);
field public static final int CONSTELLATION_BEIDOU = 5; // 0x5
field public static final int CONSTELLATION_GALILEO = 6; // 0x6
field public static final int CONSTELLATION_GLONASS = 3; // 0x3
field public static final int CONSTELLATION_GPS = 1; // 0x1
field public static final int CONSTELLATION_QZSS = 4; // 0x4
field public static final int CONSTELLATION_SBAS = 2; // 0x2
field public static final int CONSTELLATION_UNKNOWN = 0; // 0x0
}
public abstract class GnssStatusCallback {
ctor public GnssStatusCallback();
method public void onFirstFix(int);
method public void onSatelliteStatusChanged(android.location.GnssStatus);
method public void onStarted();
method public void onStopped();
}
public final class GpsSatellite {
@@ -19494,12 +19494,12 @@ package android.location {
method public java.util.List<java.lang.String> getProviders(boolean);
method public java.util.List<java.lang.String> getProviders(android.location.Criteria, boolean);
method public boolean isProviderEnabled(java.lang.String);
method public boolean registerGnssMeasurementCallback(android.location.GnssMeasurementsEvent.Callback);
method public boolean registerGnssMeasurementCallback(android.location.GnssMeasurementsEvent.Callback, android.os.Handler);
method public boolean registerGnssNavigationMessageCallback(android.location.GnssNavigationMessageEvent.Callback);
method public boolean registerGnssNavigationMessageCallback(android.location.GnssNavigationMessageEvent.Callback, android.os.Handler);
method public boolean registerGnssStatusCallback(android.location.GnssStatusCallback);
method public boolean registerGnssStatusCallback(android.location.GnssStatusCallback, android.os.Handler);
method public boolean registerGpsMeasurementCallback(android.location.GpsMeasurementsEvent.Callback);
method public boolean registerGpsMeasurementCallback(android.location.GpsMeasurementsEvent.Callback, android.os.Handler);
method public boolean registerGpsNavigationMessageCallback(android.location.GpsNavigationMessageEvent.Callback);
method public boolean registerGpsNavigationMessageCallback(android.location.GpsNavigationMessageEvent.Callback, android.os.Handler);
method public deprecated void removeGpsStatusListener(android.location.GpsStatus.Listener);
method public deprecated void removeNmeaListener(android.location.GpsStatus.NmeaListener);
method public void removeNmeaListener(android.location.GnssNmeaListener);
@@ -19520,9 +19520,9 @@ package android.location {
method public void setTestProviderEnabled(java.lang.String, boolean);
method public void setTestProviderLocation(java.lang.String, android.location.Location);
method public void setTestProviderStatus(java.lang.String, int, android.os.Bundle, long);
method public void unregisterGnssMeasurementCallback(android.location.GnssMeasurementsEvent.Callback);
method public void unregisterGnssNavigationMessageCallback(android.location.GnssNavigationMessageEvent.Callback);
method public void unregisterGnssStatusCallback(android.location.GnssStatusCallback);
method public void unregisterGpsMeasurementCallback(android.location.GpsMeasurementsEvent.Callback);
method public void unregisterGpsNavigationMessageCallback(android.location.GpsNavigationMessageEvent.Callback);
field public static final java.lang.String GPS_PROVIDER = "gps";
field public static final java.lang.String KEY_LOCATION_CHANGED = "location";
field public static final java.lang.String KEY_PROVIDER_ENABLED = "providerEnabled";

View File

@@ -20292,38 +20292,7 @@ package android.location {
method public static boolean isPresent();
}
public abstract interface GnssNmeaListener {
method public abstract void onNmeaReceived(long, java.lang.String);
}
public final class GnssStatus {
method public float getAzimuth(int);
method public int getConstellationType(int);
method public float getElevation(int);
method public int getNumSatellites();
method public int getPrn(int);
method public float getSnr(int);
method public boolean hasAlmanac(int);
method public boolean hasEphemeris(int);
method public boolean usedInFix(int);
field public static final int CONSTELLATION_BEIDOU = 5; // 0x5
field public static final int CONSTELLATION_GALILEO = 6; // 0x6
field public static final int CONSTELLATION_GLONASS = 3; // 0x3
field public static final int CONSTELLATION_GPS = 1; // 0x1
field public static final int CONSTELLATION_QZSS = 4; // 0x4
field public static final int CONSTELLATION_SBAS = 2; // 0x2
field public static final int CONSTELLATION_UNKNOWN = 0; // 0x0
}
public abstract class GnssStatusCallback {
ctor public GnssStatusCallback();
method public void onFirstFix(int);
method public void onSatelliteStatusChanged(android.location.GnssStatus);
method public void onStarted();
method public void onStopped();
}
public final class GpsClock implements android.os.Parcelable {
public final class GnssClock implements android.os.Parcelable {
method public int describeContents();
method public double getBiasInNs();
method public double getBiasUncertaintyInNs();
@@ -20350,7 +20319,7 @@ package android.location {
method public void resetFullBiasInNs();
method public void resetLeapSecond();
method public void resetTimeUncertaintyInNs();
method public void set(android.location.GpsClock);
method public void set(android.location.GnssClock);
method public void setBiasInNs(double);
method public void setBiasUncertaintyInNs(double);
method public void setDriftInNsPerSec(double);
@@ -20365,13 +20334,13 @@ package android.location {
field public static final byte CLOCK_TYPE_GPS_TIME = 2; // 0x2
field public static final byte CLOCK_TYPE_LOCAL_HW_TIME = 1; // 0x1
field public static final byte CLOCK_TYPE_UNKNOWN = 0; // 0x0
field public static final android.os.Parcelable.Creator<android.location.GpsClock> CREATOR;
field public static final android.os.Parcelable.Creator<android.location.GnssClock> CREATOR;
}
public static abstract class GpsClock.GpsClockType implements java.lang.annotation.Annotation {
public static abstract class GnssClock.GnssClockType implements java.lang.annotation.Annotation {
}
public final class GpsMeasurement implements android.os.Parcelable {
public final class GnssMeasurement implements android.os.Parcelable {
method public int describeContents();
method public double getAccumulatedDeltaRangeInMeters();
method public short getAccumulatedDeltaRangeState();
@@ -20442,7 +20411,7 @@ package android.location {
method public void resetPseudorangeUncertaintyInMeters();
method public void resetSnrInDb();
method public void resetTimeFromLastBitInMs();
method public void set(android.location.GpsMeasurement);
method public void set(android.location.GnssMeasurement);
method public void setAccumulatedDeltaRangeInMeters(double);
method public void setAccumulatedDeltaRangeState(short);
method public void setAccumulatedDeltaRangeUncertaintyInMeters(double);
@@ -20481,7 +20450,7 @@ package android.location {
field public static final short ADR_STATE_RESET = 2; // 0x2
field public static final short ADR_STATE_UNKNOWN = 0; // 0x0
field public static final short ADR_STATE_VALID = 1; // 0x1
field public static final android.os.Parcelable.Creator<android.location.GpsMeasurement> CREATOR;
field public static final android.os.Parcelable.Creator<android.location.GnssMeasurement> CREATOR;
field public static final byte LOSS_OF_LOCK_CYCLE_SLIP = 2; // 0x2
field public static final byte LOSS_OF_LOCK_OK = 1; // 0x1
field public static final byte LOSS_OF_LOCK_UNKNOWN = 0; // 0x0
@@ -20496,34 +20465,34 @@ package android.location {
field public static final short STATE_UNKNOWN = 0; // 0x0
}
public static abstract class GpsMeasurement.LossOfLockStatus implements java.lang.annotation.Annotation {
public static abstract class GnssMeasurement.LossOfLockStatus implements java.lang.annotation.Annotation {
}
public static abstract class GpsMeasurement.MultipathIndicator implements java.lang.annotation.Annotation {
public static abstract class GnssMeasurement.MultipathIndicator implements java.lang.annotation.Annotation {
}
public final class GpsMeasurementsEvent implements android.os.Parcelable {
ctor public GpsMeasurementsEvent(android.location.GpsClock, android.location.GpsMeasurement[]);
public final class GnssMeasurementsEvent implements android.os.Parcelable {
ctor public GnssMeasurementsEvent(android.location.GnssClock, android.location.GnssMeasurement[]);
method public int describeContents();
method public android.location.GpsClock getClock();
method public java.util.Collection<android.location.GpsMeasurement> getMeasurements();
method public android.location.GnssClock getClock();
method public java.util.Collection<android.location.GnssMeasurement> getMeasurements();
method public void writeToParcel(android.os.Parcel, int);
field public static final android.os.Parcelable.Creator<android.location.GpsMeasurementsEvent> CREATOR;
field public static final android.os.Parcelable.Creator<android.location.GnssMeasurementsEvent> CREATOR;
field public static final int STATUS_GPS_LOCATION_DISABLED = 2; // 0x2
field public static final int STATUS_NOT_SUPPORTED = 0; // 0x0
field public static final int STATUS_READY = 1; // 0x1
}
public static abstract class GpsMeasurementsEvent.Callback {
ctor public GpsMeasurementsEvent.Callback();
method public void onGpsMeasurementsReceived(android.location.GpsMeasurementsEvent);
public static abstract class GnssMeasurementsEvent.Callback {
ctor public GnssMeasurementsEvent.Callback();
method public void onGnssMeasurementsReceived(android.location.GnssMeasurementsEvent);
method public void onStatusChanged(int);
}
public static abstract class GpsMeasurementsEvent.GpsMeasurementsStatus implements java.lang.annotation.Annotation {
public static abstract class GnssMeasurementsEvent.GnssMeasurementsStatus implements java.lang.annotation.Annotation {
}
public final class GpsNavigationMessage implements android.os.Parcelable {
public final class GnssNavigationMessage implements android.os.Parcelable {
method public int describeContents();
method public byte[] getData();
method public short getMessageId();
@@ -20532,7 +20501,7 @@ package android.location {
method public short getSubmessageId();
method public byte getType();
method public void reset();
method public void set(android.location.GpsNavigationMessage);
method public void set(android.location.GnssNavigationMessage);
method public void setData(byte[]);
method public void setMessageId(short);
method public void setPrn(byte);
@@ -20540,7 +20509,7 @@ package android.location {
method public void setSubmessageId(short);
method public void setType(byte);
method public void writeToParcel(android.os.Parcel, int);
field public static final android.os.Parcelable.Creator<android.location.GpsNavigationMessage> CREATOR;
field public static final android.os.Parcelable.Creator<android.location.GnssNavigationMessage> CREATOR;
field public static final byte MESSAGE_TYPE_CNAV2 = 4; // 0x4
field public static final byte MESSAGE_TYPE_L1CA = 1; // 0x1
field public static final byte MESSAGE_TYPE_L2CNAV = 2; // 0x2
@@ -20551,27 +20520,58 @@ package android.location {
field public static final short STATUS_UNKNOWN = 0; // 0x0
}
public static abstract class GpsNavigationMessage.GpsNavigationMessageType implements java.lang.annotation.Annotation {
public static abstract class GnssNavigationMessage.GnssNavigationMessageType implements java.lang.annotation.Annotation {
}
public final class GpsNavigationMessageEvent implements android.os.Parcelable {
ctor public GpsNavigationMessageEvent(android.location.GpsNavigationMessage);
public final class GnssNavigationMessageEvent implements android.os.Parcelable {
ctor public GnssNavigationMessageEvent(android.location.GnssNavigationMessage);
method public int describeContents();
method public android.location.GpsNavigationMessage getNavigationMessage();
method public android.location.GnssNavigationMessage getNavigationMessage();
method public void writeToParcel(android.os.Parcel, int);
field public static final android.os.Parcelable.Creator<android.location.GpsNavigationMessageEvent> CREATOR;
field public static final android.os.Parcelable.Creator<android.location.GnssNavigationMessageEvent> CREATOR;
field public static final int STATUS_GPS_LOCATION_DISABLED = 2; // 0x2
field public static final int STATUS_NOT_SUPPORTED = 0; // 0x0
field public static final int STATUS_READY = 1; // 0x1
}
public static abstract class GpsNavigationMessageEvent.Callback {
ctor public GpsNavigationMessageEvent.Callback();
method public void onGpsNavigationMessageReceived(android.location.GpsNavigationMessageEvent);
public static abstract class GnssNavigationMessageEvent.Callback {
ctor public GnssNavigationMessageEvent.Callback();
method public void onGnssNavigationMessageReceived(android.location.GnssNavigationMessageEvent);
method public void onStatusChanged(int);
}
public static abstract class GpsNavigationMessageEvent.GpsNavigationMessageStatus implements java.lang.annotation.Annotation {
public static abstract class GnssNavigationMessageEvent.GnssNavigationMessageStatus implements java.lang.annotation.Annotation {
}
public abstract interface GnssNmeaListener {
method public abstract void onNmeaReceived(long, java.lang.String);
}
public final class GnssStatus {
method public float getAzimuth(int);
method public int getConstellationType(int);
method public float getElevation(int);
method public int getNumSatellites();
method public int getPrn(int);
method public float getSnr(int);
method public boolean hasAlmanac(int);
method public boolean hasEphemeris(int);
method public boolean usedInFix(int);
field public static final int CONSTELLATION_BEIDOU = 5; // 0x5
field public static final int CONSTELLATION_GALILEO = 6; // 0x6
field public static final int CONSTELLATION_GLONASS = 3; // 0x3
field public static final int CONSTELLATION_GPS = 1; // 0x1
field public static final int CONSTELLATION_QZSS = 4; // 0x4
field public static final int CONSTELLATION_SBAS = 2; // 0x2
field public static final int CONSTELLATION_UNKNOWN = 0; // 0x0
}
public abstract class GnssStatusCallback {
ctor public GnssStatusCallback();
method public void onFirstFix(int);
method public void onSatelliteStatusChanged(android.location.GnssStatus);
method public void onStarted();
method public void onStopped();
}
public final class GpsSatellite {
@@ -20695,12 +20695,12 @@ package android.location {
method public java.util.List<java.lang.String> getProviders(boolean);
method public java.util.List<java.lang.String> getProviders(android.location.Criteria, boolean);
method public boolean isProviderEnabled(java.lang.String);
method public boolean registerGnssMeasurementCallback(android.location.GnssMeasurementsEvent.Callback);
method public boolean registerGnssMeasurementCallback(android.location.GnssMeasurementsEvent.Callback, android.os.Handler);
method public boolean registerGnssNavigationMessageCallback(android.location.GnssNavigationMessageEvent.Callback);
method public boolean registerGnssNavigationMessageCallback(android.location.GnssNavigationMessageEvent.Callback, android.os.Handler);
method public boolean registerGnssStatusCallback(android.location.GnssStatusCallback);
method public boolean registerGnssStatusCallback(android.location.GnssStatusCallback, android.os.Handler);
method public boolean registerGpsMeasurementCallback(android.location.GpsMeasurementsEvent.Callback);
method public boolean registerGpsMeasurementCallback(android.location.GpsMeasurementsEvent.Callback, android.os.Handler);
method public boolean registerGpsNavigationMessageCallback(android.location.GpsNavigationMessageEvent.Callback);
method public boolean registerGpsNavigationMessageCallback(android.location.GpsNavigationMessageEvent.Callback, android.os.Handler);
method public deprecated void removeGpsStatusListener(android.location.GpsStatus.Listener);
method public deprecated void removeNmeaListener(android.location.GpsStatus.NmeaListener);
method public void removeNmeaListener(android.location.GnssNmeaListener);
@@ -20723,9 +20723,9 @@ package android.location {
method public void setTestProviderEnabled(java.lang.String, boolean);
method public void setTestProviderLocation(java.lang.String, android.location.Location);
method public void setTestProviderStatus(java.lang.String, int, android.os.Bundle, long);
method public void unregisterGnssMeasurementCallback(android.location.GnssMeasurementsEvent.Callback);
method public void unregisterGnssNavigationMessageCallback(android.location.GnssNavigationMessageEvent.Callback);
method public void unregisterGnssStatusCallback(android.location.GnssStatusCallback);
method public void unregisterGpsMeasurementCallback(android.location.GpsMeasurementsEvent.Callback);
method public void unregisterGpsNavigationMessageCallback(android.location.GpsNavigationMessageEvent.Callback);
field public static final java.lang.String GPS_PROVIDER = "gps";
field public static final java.lang.String KEY_LOCATION_CHANGED = "location";
field public static final java.lang.String KEY_PROVIDER_ENABLED = "providerEnabled";

View File

@@ -19119,38 +19119,7 @@ package android.location {
method public static boolean isPresent();
}
public abstract interface GnssNmeaListener {
method public abstract void onNmeaReceived(long, java.lang.String);
}
public final class GnssStatus {
method public float getAzimuth(int);
method public int getConstellationType(int);
method public float getElevation(int);
method public int getNumSatellites();
method public int getPrn(int);
method public float getSnr(int);
method public boolean hasAlmanac(int);
method public boolean hasEphemeris(int);
method public boolean usedInFix(int);
field public static final int CONSTELLATION_BEIDOU = 5; // 0x5
field public static final int CONSTELLATION_GALILEO = 6; // 0x6
field public static final int CONSTELLATION_GLONASS = 3; // 0x3
field public static final int CONSTELLATION_GPS = 1; // 0x1
field public static final int CONSTELLATION_QZSS = 4; // 0x4
field public static final int CONSTELLATION_SBAS = 2; // 0x2
field public static final int CONSTELLATION_UNKNOWN = 0; // 0x0
}
public abstract class GnssStatusCallback {
ctor public GnssStatusCallback();
method public void onFirstFix(int);
method public void onSatelliteStatusChanged(android.location.GnssStatus);
method public void onStarted();
method public void onStopped();
}
public final class GpsClock implements android.os.Parcelable {
public final class GnssClock implements android.os.Parcelable {
method public int describeContents();
method public double getBiasInNs();
method public double getBiasUncertaintyInNs();
@@ -19177,7 +19146,7 @@ package android.location {
method public void resetFullBiasInNs();
method public void resetLeapSecond();
method public void resetTimeUncertaintyInNs();
method public void set(android.location.GpsClock);
method public void set(android.location.GnssClock);
method public void setBiasInNs(double);
method public void setBiasUncertaintyInNs(double);
method public void setDriftInNsPerSec(double);
@@ -19192,13 +19161,13 @@ package android.location {
field public static final byte CLOCK_TYPE_GPS_TIME = 2; // 0x2
field public static final byte CLOCK_TYPE_LOCAL_HW_TIME = 1; // 0x1
field public static final byte CLOCK_TYPE_UNKNOWN = 0; // 0x0
field public static final android.os.Parcelable.Creator<android.location.GpsClock> CREATOR;
field public static final android.os.Parcelable.Creator<android.location.GnssClock> CREATOR;
}
public static abstract class GpsClock.GpsClockType implements java.lang.annotation.Annotation {
public static abstract class GnssClock.GnssClockType implements java.lang.annotation.Annotation {
}
public final class GpsMeasurement implements android.os.Parcelable {
public final class GnssMeasurement implements android.os.Parcelable {
method public int describeContents();
method public double getAccumulatedDeltaRangeInMeters();
method public short getAccumulatedDeltaRangeState();
@@ -19269,7 +19238,7 @@ package android.location {
method public void resetPseudorangeUncertaintyInMeters();
method public void resetSnrInDb();
method public void resetTimeFromLastBitInMs();
method public void set(android.location.GpsMeasurement);
method public void set(android.location.GnssMeasurement);
method public void setAccumulatedDeltaRangeInMeters(double);
method public void setAccumulatedDeltaRangeState(short);
method public void setAccumulatedDeltaRangeUncertaintyInMeters(double);
@@ -19308,7 +19277,7 @@ package android.location {
field public static final short ADR_STATE_RESET = 2; // 0x2
field public static final short ADR_STATE_UNKNOWN = 0; // 0x0
field public static final short ADR_STATE_VALID = 1; // 0x1
field public static final android.os.Parcelable.Creator<android.location.GpsMeasurement> CREATOR;
field public static final android.os.Parcelable.Creator<android.location.GnssMeasurement> CREATOR;
field public static final byte LOSS_OF_LOCK_CYCLE_SLIP = 2; // 0x2
field public static final byte LOSS_OF_LOCK_OK = 1; // 0x1
field public static final byte LOSS_OF_LOCK_UNKNOWN = 0; // 0x0
@@ -19323,34 +19292,34 @@ package android.location {
field public static final short STATE_UNKNOWN = 0; // 0x0
}
public static abstract class GpsMeasurement.LossOfLockStatus implements java.lang.annotation.Annotation {
public static abstract class GnssMeasurement.LossOfLockStatus implements java.lang.annotation.Annotation {
}
public static abstract class GpsMeasurement.MultipathIndicator implements java.lang.annotation.Annotation {
public static abstract class GnssMeasurement.MultipathIndicator implements java.lang.annotation.Annotation {
}
public final class GpsMeasurementsEvent implements android.os.Parcelable {
ctor public GpsMeasurementsEvent(android.location.GpsClock, android.location.GpsMeasurement[]);
public final class GnssMeasurementsEvent implements android.os.Parcelable {
ctor public GnssMeasurementsEvent(android.location.GnssClock, android.location.GnssMeasurement[]);
method public int describeContents();
method public android.location.GpsClock getClock();
method public java.util.Collection<android.location.GpsMeasurement> getMeasurements();
method public android.location.GnssClock getClock();
method public java.util.Collection<android.location.GnssMeasurement> getMeasurements();
method public void writeToParcel(android.os.Parcel, int);
field public static final android.os.Parcelable.Creator<android.location.GpsMeasurementsEvent> CREATOR;
field public static final android.os.Parcelable.Creator<android.location.GnssMeasurementsEvent> CREATOR;
field public static final int STATUS_GPS_LOCATION_DISABLED = 2; // 0x2
field public static final int STATUS_NOT_SUPPORTED = 0; // 0x0
field public static final int STATUS_READY = 1; // 0x1
}
public static abstract class GpsMeasurementsEvent.Callback {
ctor public GpsMeasurementsEvent.Callback();
method public void onGpsMeasurementsReceived(android.location.GpsMeasurementsEvent);
public static abstract class GnssMeasurementsEvent.Callback {
ctor public GnssMeasurementsEvent.Callback();
method public void onGnssMeasurementsReceived(android.location.GnssMeasurementsEvent);
method public void onStatusChanged(int);
}
public static abstract class GpsMeasurementsEvent.GpsMeasurementsStatus implements java.lang.annotation.Annotation {
public static abstract class GnssMeasurementsEvent.GnssMeasurementsStatus implements java.lang.annotation.Annotation {
}
public final class GpsNavigationMessage implements android.os.Parcelable {
public final class GnssNavigationMessage implements android.os.Parcelable {
method public int describeContents();
method public byte[] getData();
method public short getMessageId();
@@ -19359,7 +19328,7 @@ package android.location {
method public short getSubmessageId();
method public byte getType();
method public void reset();
method public void set(android.location.GpsNavigationMessage);
method public void set(android.location.GnssNavigationMessage);
method public void setData(byte[]);
method public void setMessageId(short);
method public void setPrn(byte);
@@ -19367,7 +19336,7 @@ package android.location {
method public void setSubmessageId(short);
method public void setType(byte);
method public void writeToParcel(android.os.Parcel, int);
field public static final android.os.Parcelable.Creator<android.location.GpsNavigationMessage> CREATOR;
field public static final android.os.Parcelable.Creator<android.location.GnssNavigationMessage> CREATOR;
field public static final byte MESSAGE_TYPE_CNAV2 = 4; // 0x4
field public static final byte MESSAGE_TYPE_L1CA = 1; // 0x1
field public static final byte MESSAGE_TYPE_L2CNAV = 2; // 0x2
@@ -19378,27 +19347,58 @@ package android.location {
field public static final short STATUS_UNKNOWN = 0; // 0x0
}
public static abstract class GpsNavigationMessage.GpsNavigationMessageType implements java.lang.annotation.Annotation {
public static abstract class GnssNavigationMessage.GnssNavigationMessageType implements java.lang.annotation.Annotation {
}
public final class GpsNavigationMessageEvent implements android.os.Parcelable {
ctor public GpsNavigationMessageEvent(android.location.GpsNavigationMessage);
public final class GnssNavigationMessageEvent implements android.os.Parcelable {
ctor public GnssNavigationMessageEvent(android.location.GnssNavigationMessage);
method public int describeContents();
method public android.location.GpsNavigationMessage getNavigationMessage();
method public android.location.GnssNavigationMessage getNavigationMessage();
method public void writeToParcel(android.os.Parcel, int);
field public static final android.os.Parcelable.Creator<android.location.GpsNavigationMessageEvent> CREATOR;
field public static final android.os.Parcelable.Creator<android.location.GnssNavigationMessageEvent> CREATOR;
field public static final int STATUS_GPS_LOCATION_DISABLED = 2; // 0x2
field public static final int STATUS_NOT_SUPPORTED = 0; // 0x0
field public static final int STATUS_READY = 1; // 0x1
}
public static abstract class GpsNavigationMessageEvent.Callback {
ctor public GpsNavigationMessageEvent.Callback();
method public void onGpsNavigationMessageReceived(android.location.GpsNavigationMessageEvent);
public static abstract class GnssNavigationMessageEvent.Callback {
ctor public GnssNavigationMessageEvent.Callback();
method public void onGnssNavigationMessageReceived(android.location.GnssNavigationMessageEvent);
method public void onStatusChanged(int);
}
public static abstract class GpsNavigationMessageEvent.GpsNavigationMessageStatus implements java.lang.annotation.Annotation {
public static abstract class GnssNavigationMessageEvent.GnssNavigationMessageStatus implements java.lang.annotation.Annotation {
}
public abstract interface GnssNmeaListener {
method public abstract void onNmeaReceived(long, java.lang.String);
}
public final class GnssStatus {
method public float getAzimuth(int);
method public int getConstellationType(int);
method public float getElevation(int);
method public int getNumSatellites();
method public int getPrn(int);
method public float getSnr(int);
method public boolean hasAlmanac(int);
method public boolean hasEphemeris(int);
method public boolean usedInFix(int);
field public static final int CONSTELLATION_BEIDOU = 5; // 0x5
field public static final int CONSTELLATION_GALILEO = 6; // 0x6
field public static final int CONSTELLATION_GLONASS = 3; // 0x3
field public static final int CONSTELLATION_GPS = 1; // 0x1
field public static final int CONSTELLATION_QZSS = 4; // 0x4
field public static final int CONSTELLATION_SBAS = 2; // 0x2
field public static final int CONSTELLATION_UNKNOWN = 0; // 0x0
}
public abstract class GnssStatusCallback {
ctor public GnssStatusCallback();
method public void onFirstFix(int);
method public void onSatelliteStatusChanged(android.location.GnssStatus);
method public void onStarted();
method public void onStopped();
}
public final class GpsSatellite {
@@ -19503,12 +19503,12 @@ package android.location {
method public java.util.List<java.lang.String> getProviders(boolean);
method public java.util.List<java.lang.String> getProviders(android.location.Criteria, boolean);
method public boolean isProviderEnabled(java.lang.String);
method public boolean registerGnssMeasurementCallback(android.location.GnssMeasurementsEvent.Callback);
method public boolean registerGnssMeasurementCallback(android.location.GnssMeasurementsEvent.Callback, android.os.Handler);
method public boolean registerGnssNavigationMessageCallback(android.location.GnssNavigationMessageEvent.Callback);
method public boolean registerGnssNavigationMessageCallback(android.location.GnssNavigationMessageEvent.Callback, android.os.Handler);
method public boolean registerGnssStatusCallback(android.location.GnssStatusCallback);
method public boolean registerGnssStatusCallback(android.location.GnssStatusCallback, android.os.Handler);
method public boolean registerGpsMeasurementCallback(android.location.GpsMeasurementsEvent.Callback);
method public boolean registerGpsMeasurementCallback(android.location.GpsMeasurementsEvent.Callback, android.os.Handler);
method public boolean registerGpsNavigationMessageCallback(android.location.GpsNavigationMessageEvent.Callback);
method public boolean registerGpsNavigationMessageCallback(android.location.GpsNavigationMessageEvent.Callback, android.os.Handler);
method public deprecated void removeGpsStatusListener(android.location.GpsStatus.Listener);
method public deprecated void removeNmeaListener(android.location.GpsStatus.NmeaListener);
method public void removeNmeaListener(android.location.GnssNmeaListener);
@@ -19529,9 +19529,9 @@ package android.location {
method public void setTestProviderEnabled(java.lang.String, boolean);
method public void setTestProviderLocation(java.lang.String, android.location.Location);
method public void setTestProviderStatus(java.lang.String, int, android.os.Bundle, long);
method public void unregisterGnssMeasurementCallback(android.location.GnssMeasurementsEvent.Callback);
method public void unregisterGnssNavigationMessageCallback(android.location.GnssNavigationMessageEvent.Callback);
method public void unregisterGnssStatusCallback(android.location.GnssStatusCallback);
method public void unregisterGpsMeasurementCallback(android.location.GpsMeasurementsEvent.Callback);
method public void unregisterGpsNavigationMessageCallback(android.location.GpsNavigationMessageEvent.Callback);
field public static final java.lang.String GPS_PROVIDER = "gps";
field public static final java.lang.String KEY_LOCATION_CHANGED = "location";
field public static final java.lang.String KEY_PROVIDER_ENABLED = "providerEnabled";

View File

@@ -27,14 +27,14 @@ import java.lang.annotation.RetentionPolicy;
* A class containing a GPS clock timestamp.
* It represents a measurement of the GPS receiver's clock.
*/
public final class GpsClock implements Parcelable {
public final class GnssClock implements Parcelable {
// The following enumerations must be in sync with the values declared in gps.h
/** The type of the GPS Clock. */
@Retention(RetentionPolicy.SOURCE)
@IntDef({CLOCK_TYPE_UNKNOWN, CLOCK_TYPE_LOCAL_HW_TIME, CLOCK_TYPE_GPS_TIME})
public @interface GpsClockType {}
public @interface GnssClockType {}
/**
* The type of the time stored is not available or it is unknown.
@@ -75,14 +75,14 @@ public final class GpsClock implements Parcelable {
private double mDriftUncertaintyInNsPerSec;
private long mTimeOfLastHwClockDiscontinuityInNs;
GpsClock() {
GnssClock() {
initialize();
}
/**
* Sets all contents to the values stored in the provided object.
*/
public void set(GpsClock clock) {
public void set(GnssClock clock) {
mFlags = clock.mFlags;
mLeapSecond = clock.mLeapSecond;
mType = clock.mType;
@@ -106,7 +106,7 @@ public final class GpsClock implements Parcelable {
/**
* Gets the type of time reported by {@link #getTimeInNs()}.
*/
@GpsClockType
@GnssClockType
public byte getType() {
return mType;
}
@@ -114,7 +114,7 @@ public final class GpsClock implements Parcelable {
/**
* Sets the type of time reported.
*/
public void setType(@GpsClockType byte value) {
public void setType(@GnssClockType byte value) {
mType = value;
}
@@ -416,10 +416,10 @@ public final class GpsClock implements Parcelable {
mDriftUncertaintyInNsPerSec = Double.NaN;
}
public static final Creator<GpsClock> CREATOR = new Creator<GpsClock>() {
public static final Creator<GnssClock> CREATOR = new Creator<GnssClock>() {
@Override
public GpsClock createFromParcel(Parcel parcel) {
GpsClock gpsClock = new GpsClock();
public GnssClock createFromParcel(Parcel parcel) {
GnssClock gpsClock = new GnssClock();
gpsClock.mFlags = (short) parcel.readInt();
gpsClock.mLeapSecond = (short) parcel.readInt();
@@ -437,8 +437,8 @@ public final class GpsClock implements Parcelable {
}
@Override
public GpsClock[] newArray(int size) {
return new GpsClock[size];
public GnssClock[] newArray(int size) {
return new GnssClock[size];
}
};
@@ -465,7 +465,7 @@ public final class GpsClock implements Parcelable {
public String toString() {
final String format = " %-15s = %s\n";
final String formatWithUncertainty = " %-15s = %-25s %-26s = %s\n";
StringBuilder builder = new StringBuilder("GpsClock:\n");
StringBuilder builder = new StringBuilder("GnssClock:\n");
builder.append(String.format(format, "Type", getTypeString()));

View File

@@ -26,7 +26,7 @@ import java.lang.annotation.RetentionPolicy;
/**
* A class representing a GPS satellite measurement, containing raw and computed information.
*/
public final class GpsMeasurement implements Parcelable {
public final class GnssMeasurement implements Parcelable {
private int mFlags;
private byte mPrn;
private double mTimeOffsetInNs;
@@ -189,14 +189,14 @@ public final class GpsMeasurement implements Parcelable {
// End enumerations in sync with gps.h
GpsMeasurement() {
GnssMeasurement() {
initialize();
}
/**
* Sets all contents to the values stored in the provided object.
*/
public void set(GpsMeasurement measurement) {
public void set(GnssMeasurement measurement) {
mFlags = measurement.mFlags;
mPrn = measurement.mPrn;
mTimeOffsetInNs = measurement.mTimeOffsetInNs;
@@ -261,8 +261,8 @@ public final class GpsMeasurement implements Parcelable {
/**
* Gets the time offset at which the measurement was taken in nanoseconds.
* The reference receiver's time is specified by {@link GpsClock#getTimeInNs()} and should be
* interpreted in the same way as indicated by {@link GpsClock#getType()}.
* The reference receiver's time is specified by {@link GnssClock#getTimeInNs()} and should be
* interpreted in the same way as indicated by {@link GnssClock#getType()}.
*
* The sign of this value is given by the following equation:
* measurement time = time_ns + time_offset_ns
@@ -1204,52 +1204,52 @@ public final class GpsMeasurement implements Parcelable {
mPseudorangeRateCarrierUncertaintyInMetersPerSec = value;
}
public static final Creator<GpsMeasurement> CREATOR = new Creator<GpsMeasurement>() {
public static final Creator<GnssMeasurement> CREATOR = new Creator<GnssMeasurement>() {
@Override
public GpsMeasurement createFromParcel(Parcel parcel) {
GpsMeasurement gpsMeasurement = new GpsMeasurement();
public GnssMeasurement createFromParcel(Parcel parcel) {
GnssMeasurement gnssMeasurement = new GnssMeasurement();
gpsMeasurement.mFlags = parcel.readInt();
gpsMeasurement.mPrn = parcel.readByte();
gpsMeasurement.mTimeOffsetInNs = parcel.readDouble();
gpsMeasurement.mState = (short) parcel.readInt();
gpsMeasurement.mReceivedGpsTowInNs = parcel.readLong();
gpsMeasurement.mReceivedGpsTowUncertaintyInNs = parcel.readLong();
gpsMeasurement.mCn0InDbHz = parcel.readDouble();
gpsMeasurement.mPseudorangeRateInMetersPerSec = parcel.readDouble();
gpsMeasurement.mPseudorangeRateUncertaintyInMetersPerSec = parcel.readDouble();
gpsMeasurement.mAccumulatedDeltaRangeState = (short) parcel.readInt();
gpsMeasurement.mAccumulatedDeltaRangeInMeters = parcel.readDouble();
gpsMeasurement.mAccumulatedDeltaRangeUncertaintyInMeters = parcel.readDouble();
gpsMeasurement.mPseudorangeInMeters = parcel.readDouble();
gpsMeasurement.mPseudorangeUncertaintyInMeters = parcel.readDouble();
gpsMeasurement.mCodePhaseInChips = parcel.readDouble();
gpsMeasurement.mCodePhaseUncertaintyInChips = parcel.readDouble();
gpsMeasurement.mCarrierFrequencyInHz = parcel.readFloat();
gpsMeasurement.mCarrierCycles = parcel.readLong();
gpsMeasurement.mCarrierPhase = parcel.readDouble();
gpsMeasurement.mCarrierPhaseUncertainty = parcel.readDouble();
gpsMeasurement.mLossOfLock = parcel.readByte();
gpsMeasurement.mBitNumber = parcel.readInt();
gpsMeasurement.mTimeFromLastBitInMs = (short) parcel.readInt();
gpsMeasurement.mDopplerShiftInHz = parcel.readDouble();
gpsMeasurement.mDopplerShiftUncertaintyInHz = parcel.readDouble();
gpsMeasurement.mMultipathIndicator = parcel.readByte();
gpsMeasurement.mSnrInDb = parcel.readDouble();
gpsMeasurement.mElevationInDeg = parcel.readDouble();
gpsMeasurement.mElevationUncertaintyInDeg = parcel.readDouble();
gpsMeasurement.mAzimuthInDeg = parcel.readDouble();
gpsMeasurement.mAzimuthUncertaintyInDeg = parcel.readDouble();
gpsMeasurement.mUsedInFix = parcel.readInt() != 0;
gpsMeasurement.mPseudorangeRateCarrierInMetersPerSec = parcel.readDouble();
gpsMeasurement.mPseudorangeRateCarrierUncertaintyInMetersPerSec = parcel.readDouble();
gnssMeasurement.mFlags = parcel.readInt();
gnssMeasurement.mPrn = parcel.readByte();
gnssMeasurement.mTimeOffsetInNs = parcel.readDouble();
gnssMeasurement.mState = (short) parcel.readInt();
gnssMeasurement.mReceivedGpsTowInNs = parcel.readLong();
gnssMeasurement.mReceivedGpsTowUncertaintyInNs = parcel.readLong();
gnssMeasurement.mCn0InDbHz = parcel.readDouble();
gnssMeasurement.mPseudorangeRateInMetersPerSec = parcel.readDouble();
gnssMeasurement.mPseudorangeRateUncertaintyInMetersPerSec = parcel.readDouble();
gnssMeasurement.mAccumulatedDeltaRangeState = (short) parcel.readInt();
gnssMeasurement.mAccumulatedDeltaRangeInMeters = parcel.readDouble();
gnssMeasurement.mAccumulatedDeltaRangeUncertaintyInMeters = parcel.readDouble();
gnssMeasurement.mPseudorangeInMeters = parcel.readDouble();
gnssMeasurement.mPseudorangeUncertaintyInMeters = parcel.readDouble();
gnssMeasurement.mCodePhaseInChips = parcel.readDouble();
gnssMeasurement.mCodePhaseUncertaintyInChips = parcel.readDouble();
gnssMeasurement.mCarrierFrequencyInHz = parcel.readFloat();
gnssMeasurement.mCarrierCycles = parcel.readLong();
gnssMeasurement.mCarrierPhase = parcel.readDouble();
gnssMeasurement.mCarrierPhaseUncertainty = parcel.readDouble();
gnssMeasurement.mLossOfLock = parcel.readByte();
gnssMeasurement.mBitNumber = parcel.readInt();
gnssMeasurement.mTimeFromLastBitInMs = (short) parcel.readInt();
gnssMeasurement.mDopplerShiftInHz = parcel.readDouble();
gnssMeasurement.mDopplerShiftUncertaintyInHz = parcel.readDouble();
gnssMeasurement.mMultipathIndicator = parcel.readByte();
gnssMeasurement.mSnrInDb = parcel.readDouble();
gnssMeasurement.mElevationInDeg = parcel.readDouble();
gnssMeasurement.mElevationUncertaintyInDeg = parcel.readDouble();
gnssMeasurement.mAzimuthInDeg = parcel.readDouble();
gnssMeasurement.mAzimuthUncertaintyInDeg = parcel.readDouble();
gnssMeasurement.mUsedInFix = parcel.readInt() != 0;
gnssMeasurement.mPseudorangeRateCarrierInMetersPerSec = parcel.readDouble();
gnssMeasurement.mPseudorangeRateCarrierUncertaintyInMetersPerSec = parcel.readDouble();
return gpsMeasurement;
return gnssMeasurement;
}
@Override
public GpsMeasurement[] newArray(int i) {
return new GpsMeasurement[i];
public GnssMeasurement[] newArray(int i) {
return new GnssMeasurement[i];
}
};
@@ -1299,7 +1299,7 @@ public final class GpsMeasurement implements Parcelable {
public String toString() {
final String format = " %-29s = %s\n";
final String formatWithUncertainty = " %-29s = %-25s %-40s = %s\n";
StringBuilder builder = new StringBuilder("GpsMeasurement:\n");
StringBuilder builder = new StringBuilder("GnssMeasurement:\n");
builder.append(String.format(format, "Prn", mPrn));

View File

@@ -20,41 +20,42 @@ import android.content.Context;
import android.os.RemoteException;
/**
* A handler class to manage transport callbacks for {@link GpsMeasurementsEvent.Callback}.
* A handler class to manage transport callbacks for {@link GnssMeasurementsEvent.Callback}.
*
* @hide
*/
class GpsMeasurementCallbackTransport
extends LocalListenerHelper<GpsMeasurementsEvent.Callback> {
class GnssMeasurementCallbackTransport
extends LocalListenerHelper<GnssMeasurementsEvent.Callback> {
private final ILocationManager mLocationManager;
private final IGpsMeasurementsListener mListenerTransport = new ListenerTransport();
private final IGnssMeasurementsListener mListenerTransport = new ListenerTransport();
public GpsMeasurementCallbackTransport(Context context, ILocationManager locationManager) {
super(context, "GpsMeasurementListenerTransport");
public GnssMeasurementCallbackTransport(Context context, ILocationManager locationManager) {
super(context, "GnssMeasurementListenerTransport");
mLocationManager = locationManager;
}
@Override
protected boolean registerWithServer() throws RemoteException {
return mLocationManager.addGpsMeasurementsListener(
return mLocationManager.addGnssMeasurementsListener(
mListenerTransport,
getContext().getPackageName());
}
@Override
protected void unregisterFromServer() throws RemoteException {
mLocationManager.removeGpsMeasurementsListener(mListenerTransport);
mLocationManager.removeGnssMeasurementsListener(mListenerTransport);
}
private class ListenerTransport extends IGpsMeasurementsListener.Stub {
private class ListenerTransport extends IGnssMeasurementsListener.Stub {
@Override
public void onGpsMeasurementsReceived(final GpsMeasurementsEvent event) {
ListenerOperation<GpsMeasurementsEvent.Callback> operation =
new ListenerOperation<GpsMeasurementsEvent.Callback>() {
public void onGnssMeasurementsReceived(final GnssMeasurementsEvent event) {
ListenerOperation<GnssMeasurementsEvent.Callback> operation =
new ListenerOperation<GnssMeasurementsEvent.Callback>() {
@Override
public void execute(GpsMeasurementsEvent.Callback callback) throws RemoteException {
callback.onGpsMeasurementsReceived(event);
public void execute(GnssMeasurementsEvent.Callback callback)
throws RemoteException {
callback.onGnssMeasurementsReceived(event);
}
};
foreach(operation);
@@ -62,10 +63,11 @@ class GpsMeasurementCallbackTransport
@Override
public void onStatusChanged(final int status) {
ListenerOperation<GpsMeasurementsEvent.Callback> operation =
new ListenerOperation<GpsMeasurementsEvent.Callback>() {
ListenerOperation<GnssMeasurementsEvent.Callback> operation =
new ListenerOperation<GnssMeasurementsEvent.Callback>() {
@Override
public void execute(GpsMeasurementsEvent.Callback callback) throws RemoteException {
public void execute(GnssMeasurementsEvent.Callback callback)
throws RemoteException {
callback.onStatusChanged(status);
}
};

View File

@@ -16,4 +16,4 @@
package android.location;
parcelable GpsMeasurementsEvent;
parcelable GnssMeasurementsEvent;

View File

@@ -32,11 +32,11 @@ import java.util.Collections;
* A class implementing a container for data associated with a measurement event.
* Events are delivered to registered instances of {@link Callback}.
*/
public final class GpsMeasurementsEvent implements Parcelable {
public final class GnssMeasurementsEvent implements Parcelable {
/** The status of GPS measurements event. */
@Retention(RetentionPolicy.SOURCE)
@IntDef({STATUS_NOT_SUPPORTED, STATUS_READY, STATUS_GPS_LOCATION_DISABLED})
public @interface GpsMeasurementsStatus {}
public @interface GnssMeasurementsStatus {}
/**
* The system does not support tracking of GPS Measurements. This status will not change in the
@@ -55,29 +55,29 @@ public final class GpsMeasurementsEvent implements Parcelable {
*/
public static final int STATUS_GPS_LOCATION_DISABLED = 2;
private final GpsClock mClock;
private final Collection<GpsMeasurement> mReadOnlyMeasurements;
private final GnssClock mClock;
private final Collection<GnssMeasurement> mReadOnlyMeasurements;
/**
* Used for receiving GPS satellite measurements from the GPS engine.
* Each measurement contains raw and computed data identifying a satellite.
* You can implement this interface and call
* {@link LocationManager#registerGpsMeasurementCallback}.
* {@link LocationManager#registerGnssMeasurementCallback}.
*/
public static abstract class Callback {
/**
* Returns the latest collected GPS Measurements.
*/
public void onGpsMeasurementsReceived(GpsMeasurementsEvent eventArgs) {}
public void onGnssMeasurementsReceived(GnssMeasurementsEvent eventArgs) {}
/**
* Returns the latest status of the GPS Measurements sub-system.
*/
public void onStatusChanged(@GpsMeasurementsStatus int status) {}
public void onStatusChanged(@GnssMeasurementsStatus int status) {}
}
public GpsMeasurementsEvent(GpsClock clock, GpsMeasurement[] measurements) {
public GnssMeasurementsEvent(GnssClock clock, GnssMeasurement[] measurements) {
if (clock == null) {
throw new InvalidParameterException("Parameter 'clock' must not be null.");
}
@@ -87,12 +87,12 @@ public final class GpsMeasurementsEvent implements Parcelable {
}
mClock = clock;
Collection<GpsMeasurement> measurementCollection = Arrays.asList(measurements);
Collection<GnssMeasurement> measurementCollection = Arrays.asList(measurements);
mReadOnlyMeasurements = Collections.unmodifiableCollection(measurementCollection);
}
@NonNull
public GpsClock getClock() {
public GnssClock getClock() {
return mClock;
}
@@ -100,28 +100,28 @@ public final class GpsMeasurementsEvent implements Parcelable {
* Gets a read-only collection of measurements associated with the current event.
*/
@NonNull
public Collection<GpsMeasurement> getMeasurements() {
public Collection<GnssMeasurement> getMeasurements() {
return mReadOnlyMeasurements;
}
public static final Creator<GpsMeasurementsEvent> CREATOR =
new Creator<GpsMeasurementsEvent>() {
public static final Creator<GnssMeasurementsEvent> CREATOR =
new Creator<GnssMeasurementsEvent>() {
@Override
public GpsMeasurementsEvent createFromParcel(Parcel in) {
public GnssMeasurementsEvent createFromParcel(Parcel in) {
ClassLoader classLoader = getClass().getClassLoader();
GpsClock clock = in.readParcelable(classLoader);
GnssClock clock = in.readParcelable(classLoader);
int measurementsLength = in.readInt();
GpsMeasurement[] measurementsArray = new GpsMeasurement[measurementsLength];
in.readTypedArray(measurementsArray, GpsMeasurement.CREATOR);
GnssMeasurement[] measurementsArray = new GnssMeasurement[measurementsLength];
in.readTypedArray(measurementsArray, GnssMeasurement.CREATOR);
return new GpsMeasurementsEvent(clock, measurementsArray);
return new GnssMeasurementsEvent(clock, measurementsArray);
}
@Override
public GpsMeasurementsEvent[] newArray(int size) {
return new GpsMeasurementsEvent[size];
public GnssMeasurementsEvent[] newArray(int size) {
return new GnssMeasurementsEvent[size];
}
};
@@ -135,20 +135,20 @@ public final class GpsMeasurementsEvent implements Parcelable {
parcel.writeParcelable(mClock, flags);
int measurementsCount = mReadOnlyMeasurements.size();
GpsMeasurement[] measurementsArray =
mReadOnlyMeasurements.toArray(new GpsMeasurement[measurementsCount]);
GnssMeasurement[] measurementsArray =
mReadOnlyMeasurements.toArray(new GnssMeasurement[measurementsCount]);
parcel.writeInt(measurementsArray.length);
parcel.writeTypedArray(measurementsArray, flags);
}
@Override
public String toString() {
StringBuilder builder = new StringBuilder("[ GpsMeasurementsEvent:\n\n");
StringBuilder builder = new StringBuilder("[ GnssMeasurementsEvent:\n\n");
builder.append(mClock.toString());
builder.append("\n");
for (GpsMeasurement measurement : mReadOnlyMeasurements) {
for (GnssMeasurement measurement : mReadOnlyMeasurements) {
builder.append(measurement.toString());
builder.append("\n");
}

View File

@@ -28,7 +28,7 @@ import java.security.InvalidParameterException;
/**
* A class containing a GPS satellite Navigation Message.
*/
public final class GpsNavigationMessage implements Parcelable {
public final class GnssNavigationMessage implements Parcelable {
private static final byte[] EMPTY_ARRAY = new byte[0];
@@ -36,7 +36,7 @@ public final class GpsNavigationMessage implements Parcelable {
@Retention(RetentionPolicy.SOURCE)
@IntDef({MESSAGE_TYPE_UNKNOWN, MESSAGE_TYPE_L1CA, MESSAGE_TYPE_L2CNAV, MESSAGE_TYPE_L5CNAV,
MESSAGE_TYPE_CNAV2})
public @interface GpsNavigationMessageType {}
public @interface GnssNavigationMessageType {}
// The following enumerations must be in sync with the values declared in gps.h
@@ -90,14 +90,14 @@ public final class GpsNavigationMessage implements Parcelable {
private byte[] mData;
private short mStatus;
GpsNavigationMessage() {
GnssNavigationMessage() {
initialize();
}
/**
* Sets all contents to the values stored in the provided object.
*/
public void set(GpsNavigationMessage navigationMessage) {
public void set(GnssNavigationMessage navigationMessage) {
mType = navigationMessage.mType;
mPrn = navigationMessage.mPrn;
mMessageId = navigationMessage.mMessageId;
@@ -116,7 +116,7 @@ public final class GpsNavigationMessage implements Parcelable {
/**
* Gets the type of the navigation message contained in the object.
*/
@GpsNavigationMessageType
@GnssNavigationMessageType
public byte getType() {
return mType;
}
@@ -124,7 +124,7 @@ public final class GpsNavigationMessage implements Parcelable {
/**
* Sets the type of the navigation message.
*/
public void setType(@GpsNavigationMessageType byte value) {
public void setType(@GnssNavigationMessageType byte value) {
mType = value;
}
@@ -249,11 +249,11 @@ public final class GpsNavigationMessage implements Parcelable {
}
}
public static final Creator<GpsNavigationMessage> CREATOR =
new Creator<GpsNavigationMessage>() {
public static final Creator<GnssNavigationMessage> CREATOR =
new Creator<GnssNavigationMessage>() {
@Override
public GpsNavigationMessage createFromParcel(Parcel parcel) {
GpsNavigationMessage navigationMessage = new GpsNavigationMessage();
public GnssNavigationMessage createFromParcel(Parcel parcel) {
GnssNavigationMessage navigationMessage = new GnssNavigationMessage();
navigationMessage.setType(parcel.readByte());
navigationMessage.setPrn(parcel.readByte());
@@ -276,8 +276,8 @@ public final class GpsNavigationMessage implements Parcelable {
}
@Override
public GpsNavigationMessage[] newArray(int size) {
return new GpsNavigationMessage[size];
public GnssNavigationMessage[] newArray(int size) {
return new GnssNavigationMessage[size];
}
};
@@ -299,7 +299,7 @@ public final class GpsNavigationMessage implements Parcelable {
@Override
public String toString() {
final String format = " %-15s = %s\n";
StringBuilder builder = new StringBuilder("GpsNavigationMessage:\n");
StringBuilder builder = new StringBuilder("GnssNavigationMessage:\n");
builder.append(String.format(format, "Type", getTypeString()));
builder.append(String.format(format, "Prn", mPrn));

View File

@@ -20,44 +20,44 @@ import android.content.Context;
import android.os.RemoteException;
/**
* A handler class to manage transport callback for {@link GpsNavigationMessageEvent.Callback}.
* A handler class to manage transport callback for {@link GnssNavigationMessageEvent.Callback}.
*
* @hide
*/
class GpsNavigationMessageCallbackTransport
extends LocalListenerHelper<GpsNavigationMessageEvent.Callback> {
class GnssNavigationMessageCallbackTransport
extends LocalListenerHelper<GnssNavigationMessageEvent.Callback> {
private final ILocationManager mLocationManager;
private final IGpsNavigationMessageListener mListenerTransport = new ListenerTransport();
private final IGnssNavigationMessageListener mListenerTransport = new ListenerTransport();
public GpsNavigationMessageCallbackTransport(
public GnssNavigationMessageCallbackTransport(
Context context,
ILocationManager locationManager) {
super(context, "GpsNavigationMessageCallbackTransport");
super(context, "GnssNavigationMessageCallbackTransport");
mLocationManager = locationManager;
}
@Override
protected boolean registerWithServer() throws RemoteException {
return mLocationManager.addGpsNavigationMessageListener(
return mLocationManager.addGnssNavigationMessageListener(
mListenerTransport,
getContext().getPackageName());
}
@Override
protected void unregisterFromServer() throws RemoteException {
mLocationManager.removeGpsNavigationMessageListener(mListenerTransport);
mLocationManager.removeGnssNavigationMessageListener(mListenerTransport);
}
private class ListenerTransport extends IGpsNavigationMessageListener.Stub {
private class ListenerTransport extends IGnssNavigationMessageListener.Stub {
@Override
public void onGpsNavigationMessageReceived(final GpsNavigationMessageEvent event) {
ListenerOperation<GpsNavigationMessageEvent.Callback> operation =
new ListenerOperation<GpsNavigationMessageEvent.Callback>() {
public void onGnssNavigationMessageReceived(final GnssNavigationMessageEvent event) {
ListenerOperation<GnssNavigationMessageEvent.Callback> operation =
new ListenerOperation<GnssNavigationMessageEvent.Callback>() {
@Override
public void execute(GpsNavigationMessageEvent.Callback callback)
public void execute(GnssNavigationMessageEvent.Callback callback)
throws RemoteException {
callback.onGpsNavigationMessageReceived(event);
callback.onGnssNavigationMessageReceived(event);
}
};
foreach(operation);
@@ -65,10 +65,10 @@ class GpsNavigationMessageCallbackTransport
@Override
public void onStatusChanged(final int status) {
ListenerOperation<GpsNavigationMessageEvent.Callback> operation =
new ListenerOperation<GpsNavigationMessageEvent.Callback>() {
ListenerOperation<GnssNavigationMessageEvent.Callback> operation =
new ListenerOperation<GnssNavigationMessageEvent.Callback>() {
@Override
public void execute(GpsNavigationMessageEvent.Callback callback)
public void execute(GnssNavigationMessageEvent.Callback callback)
throws RemoteException {
callback.onStatusChanged(status);
}

View File

@@ -16,4 +16,4 @@
package android.location;
parcelable GpsNavigationMessageEvent;
parcelable GnssNavigationMessageEvent;

View File

@@ -29,11 +29,11 @@ import java.security.InvalidParameterException;
* A class implementing a container for data associated with a navigation message event.
* Events are delivered to registered instances of {@link Callback}.
*/
public final class GpsNavigationMessageEvent implements Parcelable {
public final class GnssNavigationMessageEvent implements Parcelable {
/** The status of GPS measurements event. */
@Retention(RetentionPolicy.SOURCE)
@IntDef({STATUS_NOT_SUPPORTED, STATUS_READY, STATUS_GPS_LOCATION_DISABLED})
public @interface GpsNavigationMessageStatus {}
public @interface GnssNavigationMessageStatus {}
/**
* The system does not support tracking of GPS Navigation Messages. This status will not change
@@ -52,27 +52,27 @@ public final class GpsNavigationMessageEvent implements Parcelable {
*/
public static final int STATUS_GPS_LOCATION_DISABLED = 2;
private final GpsNavigationMessage mNavigationMessage;
private final GnssNavigationMessage mNavigationMessage;
/**
* Used for receiving GPS satellite Navigation Messages from the GPS engine.
* You can implement this interface and call
* {@link LocationManager#registerGpsNavigationMessageCallback}.
* {@link LocationManager#registerGnssNavigationMessageCallback}.
*/
public static abstract class Callback {
/**
* Returns the latest collected GPS Navigation Message.
*/
public void onGpsNavigationMessageReceived(GpsNavigationMessageEvent event) {}
public void onGnssNavigationMessageReceived(GnssNavigationMessageEvent event) {}
/**
* Returns the latest status of the GPS Navigation Messages sub-system.
*/
public void onStatusChanged(@GpsNavigationMessageStatus int status) {}
public void onStatusChanged(@GnssNavigationMessageStatus int status) {}
}
public GpsNavigationMessageEvent(GpsNavigationMessage message) {
public GnssNavigationMessageEvent(GnssNavigationMessage message) {
if (message == null) {
throw new InvalidParameterException("Parameter 'message' must not be null.");
}
@@ -80,22 +80,22 @@ public final class GpsNavigationMessageEvent implements Parcelable {
}
@NonNull
public GpsNavigationMessage getNavigationMessage() {
public GnssNavigationMessage getNavigationMessage() {
return mNavigationMessage;
}
public static final Creator<GpsNavigationMessageEvent> CREATOR =
new Creator<GpsNavigationMessageEvent>() {
public static final Creator<GnssNavigationMessageEvent> CREATOR =
new Creator<GnssNavigationMessageEvent>() {
@Override
public GpsNavigationMessageEvent createFromParcel(Parcel in) {
public GnssNavigationMessageEvent createFromParcel(Parcel in) {
ClassLoader classLoader = getClass().getClassLoader();
GpsNavigationMessage navigationMessage = in.readParcelable(classLoader);
return new GpsNavigationMessageEvent(navigationMessage);
GnssNavigationMessage navigationMessage = in.readParcelable(classLoader);
return new GnssNavigationMessageEvent(navigationMessage);
}
@Override
public GpsNavigationMessageEvent[] newArray(int size) {
return new GpsNavigationMessageEvent[size];
public GnssNavigationMessageEvent[] newArray(int size) {
return new GnssNavigationMessageEvent[size];
}
};
@@ -111,7 +111,7 @@ public final class GpsNavigationMessageEvent implements Parcelable {
@Override
public String toString() {
StringBuilder builder = new StringBuilder("[ GpsNavigationMessageEvent:\n\n");
StringBuilder builder = new StringBuilder("[ GnssNavigationMessageEvent:\n\n");
builder.append(mNavigationMessage.toString());
builder.append("\n]");
return builder.toString();

View File

@@ -16,12 +16,12 @@
package android.location;
import android.location.GpsMeasurementsEvent;
import android.location.GnssMeasurementsEvent;
/**
* {@hide}
*/
oneway interface IGpsMeasurementsListener {
void onGpsMeasurementsReceived(in GpsMeasurementsEvent event);
oneway interface IGnssMeasurementsListener {
void onGnssMeasurementsReceived(in GnssMeasurementsEvent event);
void onStatusChanged(in int status);
}

View File

@@ -16,12 +16,12 @@
package android.location;
import android.location.GpsNavigationMessageEvent;
import android.location.GnssNavigationMessageEvent;
/**
* {@hide}
*/
oneway interface IGpsNavigationMessageListener {
void onGpsNavigationMessageReceived(in GpsNavigationMessageEvent event);
oneway interface IGnssNavigationMessageListener {
void onGnssNavigationMessageReceived(in GnssNavigationMessageEvent event);
void onStatusChanged(in int status);
}

View File

@@ -21,9 +21,9 @@ import android.location.Address;
import android.location.Criteria;
import android.location.GeocoderParams;
import android.location.Geofence;
import android.location.IGnssMeasurementsListener;
import android.location.IGnssStatusListener;
import android.location.IGpsMeasurementsListener;
import android.location.IGpsNavigationMessageListener;
import android.location.IGnssNavigationMessageListener;
import android.location.ILocationListener;
import android.location.Location;
import android.location.LocationRequest;
@@ -61,13 +61,13 @@ interface ILocationManager
boolean sendNiResponse(int notifId, int userResponse);
boolean addGpsMeasurementsListener(in IGpsMeasurementsListener listener, in String packageName);
void removeGpsMeasurementsListener(in IGpsMeasurementsListener listener);
boolean addGnssMeasurementsListener(in IGnssMeasurementsListener listener, in String packageName);
void removeGnssMeasurementsListener(in IGnssMeasurementsListener listener);
boolean addGpsNavigationMessageListener(
in IGpsNavigationMessageListener listener,
boolean addGnssNavigationMessageListener(
in IGnssNavigationMessageListener listener,
in String packageName);
void removeGpsNavigationMessageListener(in IGpsNavigationMessageListener listener);
void removeGnssNavigationMessageListener(in IGnssNavigationMessageListener listener);
int getGpsYearOfHardware();

View File

@@ -64,8 +64,8 @@ public class LocationManager {
private final Context mContext;
private final ILocationManager mService;
private final GpsMeasurementCallbackTransport mGpsMeasurementCallbackTransport;
private final GpsNavigationMessageCallbackTransport mGpsNavigationMessageCallbackTransport;
private final GnssMeasurementCallbackTransport mGnssMeasurementCallbackTransport;
private final GnssNavigationMessageCallbackTransport mGnssNavigationMessageCallbackTransport;
private final HashMap<GpsStatus.Listener, GnssStatusListenerTransport> mGpsStatusListeners =
new HashMap<>();
private final HashMap<GpsStatus.NmeaListener, GnssStatusListenerTransport> mGpsNmeaListeners =
@@ -321,9 +321,9 @@ public class LocationManager {
public LocationManager(Context context, ILocationManager service) {
mService = service;
mContext = context;
mGpsMeasurementCallbackTransport = new GpsMeasurementCallbackTransport(mContext, mService);
mGpsNavigationMessageCallbackTransport =
new GpsNavigationMessageCallbackTransport(mContext, mService);
mGnssMeasurementCallbackTransport = new GnssMeasurementCallbackTransport(mContext, mService);
mGnssNavigationMessageCallbackTransport =
new GnssNavigationMessageCallbackTransport(mContext, mService);
}
private LocationProvider createProvider(String name, ProviderProperties properties) {
@@ -1819,68 +1819,68 @@ public class LocationManager {
/**
* Registers a GPS Measurement callback.
*
* @param callback a {@link GpsMeasurementsEvent.Callback} object to register.
* @param callback a {@link GnssMeasurementsEvent.Callback} object to register.
* @return {@code true} if the callback was added successfully, {@code false} otherwise.
*/
@RequiresPermission(ACCESS_FINE_LOCATION)
public boolean registerGpsMeasurementCallback(GpsMeasurementsEvent.Callback callback) {
return registerGpsMeasurementCallback(callback, null);
public boolean registerGnssMeasurementCallback(GnssMeasurementsEvent.Callback callback) {
return registerGnssMeasurementCallback(callback, null);
}
/**
* Registers a GPS Measurement callback.
*
* @param callback a {@link GpsMeasurementsEvent.Callback} object to register.
* @param callback a {@link GnssMeasurementsEvent.Callback} object to register.
* @param handler the handler that the callback runs on.
* @return {@code true} if the callback was added successfully, {@code false} otherwise.
*/
@RequiresPermission(ACCESS_FINE_LOCATION)
public boolean registerGpsMeasurementCallback(GpsMeasurementsEvent.Callback callback,
public boolean registerGnssMeasurementCallback(GnssMeasurementsEvent.Callback callback,
Handler handler) {
return mGpsMeasurementCallbackTransport.add(callback, handler);
return mGnssMeasurementCallbackTransport.add(callback, handler);
}
/**
* Unregisters a GPS Measurement callback.
*
* @param callback a {@link GpsMeasurementsEvent.Callback} object to remove.
* @param callback a {@link GnssMeasurementsEvent.Callback} object to remove.
*/
public void unregisterGpsMeasurementCallback(GpsMeasurementsEvent.Callback callback) {
mGpsMeasurementCallbackTransport.remove(callback);
public void unregisterGnssMeasurementCallback(GnssMeasurementsEvent.Callback callback) {
mGnssMeasurementCallbackTransport.remove(callback);
}
/**
* Registers a GPS Navigation Message callback.
*
* @param callback a {@link GpsNavigationMessageEvent.Callback} object to register.
* @param callback a {@link GnssNavigationMessageEvent.Callback} object to register.
* @return {@code true} if the callback was added successfully, {@code false} otherwise.
*/
public boolean registerGpsNavigationMessageCallback(
GpsNavigationMessageEvent.Callback callback) {
return registerGpsNavigationMessageCallback(callback, null);
public boolean registerGnssNavigationMessageCallback(
GnssNavigationMessageEvent.Callback callback) {
return registerGnssNavigationMessageCallback(callback, null);
}
/**
* Registers a GPS Navigation Message callback.
*
* @param callback a {@link GpsNavigationMessageEvent.Callback} object to register.
* @param callback a {@link GnssNavigationMessageEvent.Callback} object to register.
* @param handler the handler that the callback runs on.
* @return {@code true} if the callback was added successfully, {@code false} otherwise.
*/
@RequiresPermission(ACCESS_FINE_LOCATION)
public boolean registerGpsNavigationMessageCallback(
GpsNavigationMessageEvent.Callback callback, Handler handler) {
return mGpsNavigationMessageCallbackTransport.add(callback, handler);
public boolean registerGnssNavigationMessageCallback(
GnssNavigationMessageEvent.Callback callback, Handler handler) {
return mGnssNavigationMessageCallbackTransport.add(callback, handler);
}
/**
* Unregisters a GPS Navigation Message callback.
*
* @param callback a {@link GpsNavigationMessageEvent.Callback} object to remove.
* @param callback a {@link GnssNavigationMessageEvent.Callback} object to remove.
*/
public void unregisterGpsNavigationMessageCallback(
GpsNavigationMessageEvent.Callback callback) {
mGpsNavigationMessageCallbackTransport.remove(callback);
public void unregisterGnssNavigationMessageCallback(
GnssNavigationMessageEvent.Callback callback) {
mGnssNavigationMessageCallbackTransport.remove(callback);
}
/**

View File

@@ -24,12 +24,12 @@ import com.android.internal.os.BackgroundThread;
import com.android.server.location.ActivityRecognitionProxy;
import com.android.server.location.FlpHardwareProvider;
import com.android.server.location.FusedProxy;
import com.android.server.location.GnssLocationProvider;
import com.android.server.location.GeocoderProxy;
import com.android.server.location.GeofenceManager;
import com.android.server.location.GeofenceProxy;
import com.android.server.location.GpsMeasurementsProvider;
import com.android.server.location.GpsNavigationMessageProvider;
import com.android.server.location.GnssLocationProvider;
import com.android.server.location.GnssMeasurementsProvider;
import com.android.server.location.GnssNavigationMessageProvider;
import com.android.server.location.LocationBlacklist;
import com.android.server.location.LocationFudger;
import com.android.server.location.LocationProviderInterface;
@@ -61,11 +61,11 @@ import android.location.Address;
import android.location.Criteria;
import android.location.GeocoderParams;
import android.location.Geofence;
import android.location.IGnssMeasurementsListener;
import android.location.IGnssStatusListener;
import android.location.IGnssStatusProvider;
import android.location.IGpsGeofenceHardware;
import android.location.IGpsMeasurementsListener;
import android.location.IGpsNavigationMessageListener;
import android.location.IGnssNavigationMessageListener;
import android.location.ILocationListener;
import android.location.ILocationManager;
import android.location.INetInitiatedListener;
@@ -162,8 +162,8 @@ public class LocationManagerService extends ILocationManager.Stub {
private LocationWorkerHandler mLocationHandler;
private PassiveProvider mPassiveProvider; // track passive provider for special cases
private LocationBlacklist mBlacklist;
private GpsMeasurementsProvider mGpsMeasurementsProvider;
private GpsNavigationMessageProvider mGpsNavigationMessageProvider;
private GnssMeasurementsProvider mGnssMeasurementsProvider;
private GnssNavigationMessageProvider mGnssNavigationMessageProvider;
private IGpsGeofenceHardware mGpsGeofenceProxy;
// --- fields below are protected by mLock ---
@@ -467,8 +467,8 @@ public class LocationManagerService extends ILocationManager.Stub {
mNetInitiatedListener = gnssProvider.getNetInitiatedListener();
addProviderLocked(gnssProvider);
mRealProviders.put(LocationManager.GPS_PROVIDER, gnssProvider);
mGpsMeasurementsProvider = gnssProvider.getGpsMeasurementsProvider();
mGpsNavigationMessageProvider = gnssProvider.getGpsNavigationMessageProvider();
mGnssMeasurementsProvider = gnssProvider.getGnssMeasurementsProvider();
mGnssNavigationMessageProvider = gnssProvider.getGnssNavigationMessageProvider();
mGpsGeofenceProxy = gnssProvider.getGpsGeofenceProxy();
}
@@ -994,7 +994,7 @@ public class LocationManagerService extends ILocationManager.Stub {
*/
@Override
public int getGpsYearOfHardware() {
if (mGpsNavigationMessageProvider != null) {
if (mGnssNavigationMessageProvider != null) {
return mGpsSystemInfoProvider.getGpsYearOfHardware();
} else {
return 0;
@@ -1923,8 +1923,8 @@ public class LocationManagerService extends ILocationManager.Stub {
}
@Override
public boolean addGpsMeasurementsListener(
IGpsMeasurementsListener listener,
public boolean addGnssMeasurementsListener(
IGnssMeasurementsListener listener,
String packageName) {
int allowedResolutionLevel = getCallerAllowedResolutionLevel();
checkResolutionLevelIsSufficientForProviderUse(
@@ -1941,22 +1941,22 @@ public class LocationManagerService extends ILocationManager.Stub {
Binder.restoreCallingIdentity(identity);
}
if (!hasLocationAccess || mGpsMeasurementsProvider == null) {
if (!hasLocationAccess || mGnssMeasurementsProvider == null) {
return false;
}
return mGpsMeasurementsProvider.addListener(listener);
return mGnssMeasurementsProvider.addListener(listener);
}
@Override
public void removeGpsMeasurementsListener(IGpsMeasurementsListener listener) {
if (mGpsMeasurementsProvider != null) {
mGpsMeasurementsProvider.removeListener(listener);
public void removeGnssMeasurementsListener(IGnssMeasurementsListener listener) {
if (mGnssMeasurementsProvider != null) {
mGnssMeasurementsProvider.removeListener(listener);
}
}
@Override
public boolean addGpsNavigationMessageListener(
IGpsNavigationMessageListener listener,
public boolean addGnssNavigationMessageListener(
IGnssNavigationMessageListener listener,
String packageName) {
int allowedResolutionLevel = getCallerAllowedResolutionLevel();
checkResolutionLevelIsSufficientForProviderUse(
@@ -1973,16 +1973,16 @@ public class LocationManagerService extends ILocationManager.Stub {
Binder.restoreCallingIdentity(identity);
}
if (!hasLocationAccess || mGpsNavigationMessageProvider == null) {
if (!hasLocationAccess || mGnssNavigationMessageProvider == null) {
return false;
}
return mGpsNavigationMessageProvider.addListener(listener);
return mGnssNavigationMessageProvider.addListener(listener);
}
@Override
public void removeGpsNavigationMessageListener(IGpsNavigationMessageListener listener) {
if (mGpsNavigationMessageProvider != null) {
mGpsNavigationMessageProvider.removeListener(listener);
public void removeGnssNavigationMessageListener(IGnssNavigationMessageListener listener) {
if (mGnssNavigationMessageProvider != null) {
mGnssNavigationMessageProvider.removeListener(listener);
}
}

View File

@@ -38,8 +38,8 @@ import android.location.FusedBatchOptions;
import android.location.GnssStatus;
import android.location.IGnssStatusListener;
import android.location.IGnssStatusProvider;
import android.location.GpsMeasurementsEvent;
import android.location.GpsNavigationMessageEvent;
import android.location.GnssMeasurementsEvent;
import android.location.GnssNavigationMessageEvent;
import android.location.IGpsGeofenceHardware;
import android.location.ILocationManager;
import android.location.INetInitiatedListener;
@@ -368,8 +368,8 @@ public class GnssLocationProvider implements LocationProviderInterface {
private Location mLocation = new Location(LocationManager.GPS_PROVIDER);
private Bundle mLocationExtras = new Bundle();
private final GnssStatusListenerHelper mListenerHelper;
private final GpsMeasurementsProvider mGpsMeasurementsProvider;
private final GpsNavigationMessageProvider mGpsNavigationMessageProvider;
private final GnssMeasurementsProvider mGnssMeasurementsProvider;
private final GnssNavigationMessageProvider mGnssNavigationMessageProvider;
// Handler for processing events
private Handler mHandler;
@@ -428,12 +428,12 @@ public class GnssLocationProvider implements LocationProviderInterface {
return mGpsGeofenceBinder;
}
public GpsMeasurementsProvider getGpsMeasurementsProvider() {
return mGpsMeasurementsProvider;
public GnssMeasurementsProvider getGnssMeasurementsProvider() {
return mGnssMeasurementsProvider;
}
public GpsNavigationMessageProvider getGpsNavigationMessageProvider() {
return mGpsNavigationMessageProvider;
public GnssNavigationMessageProvider getGnssNavigationMessageProvider() {
return mGnssNavigationMessageProvider;
}
/**
@@ -713,7 +713,7 @@ public class GnssLocationProvider implements LocationProviderInterface {
}
};
mGpsMeasurementsProvider = new GpsMeasurementsProvider(mHandler) {
mGnssMeasurementsProvider = new GnssMeasurementsProvider(mHandler) {
@Override
public boolean isAvailableInPlatform() {
return native_is_measurement_supported();
@@ -735,7 +735,7 @@ public class GnssLocationProvider implements LocationProviderInterface {
}
};
mGpsNavigationMessageProvider = new GpsNavigationMessageProvider(mHandler) {
mGnssNavigationMessageProvider = new GnssNavigationMessageProvider(mHandler) {
@Override
protected boolean isAvailableInPlatform() {
return native_is_navigation_message_supported();
@@ -1087,8 +1087,8 @@ public class GnssLocationProvider implements LocationProviderInterface {
native_set_agps_server(AGPS_TYPE_C2K, mC2KServerHost, mC2KServerPort);
}
mGpsMeasurementsProvider.onGpsEnabledChanged();
mGpsNavigationMessageProvider.onGpsEnabledChanged();
mGnssMeasurementsProvider.onGpsEnabledChanged();
mGnssNavigationMessageProvider.onGpsEnabledChanged();
} else {
synchronized (mLock) {
mEnabled = false;
@@ -1123,8 +1123,8 @@ public class GnssLocationProvider implements LocationProviderInterface {
// do this before releasing wakelock
native_cleanup();
mGpsMeasurementsProvider.onGpsEnabledChanged();
mGpsNavigationMessageProvider.onGpsEnabledChanged();
mGnssMeasurementsProvider.onGpsEnabledChanged();
mGnssNavigationMessageProvider.onGpsEnabledChanged();
}
@Override
@@ -1655,15 +1655,15 @@ public class GnssLocationProvider implements LocationProviderInterface {
/**
* called from native code - Gps measurements callback
*/
private void reportMeasurementData(GpsMeasurementsEvent event) {
mGpsMeasurementsProvider.onMeasurementsAvailable(event);
private void reportMeasurementData(GnssMeasurementsEvent event) {
mGnssMeasurementsProvider.onMeasurementsAvailable(event);
}
/**
* called from native code - GPS navigation message callback
*/
private void reportNavigationMessage(GpsNavigationMessageEvent event) {
mGpsNavigationMessageProvider.onNavigationMessageAvailable(event);
private void reportNavigationMessage(GnssNavigationMessageEvent event) {
mGnssNavigationMessageProvider.onNavigationMessageAvailable(event);
}
/**
@@ -1677,9 +1677,9 @@ public class GnssLocationProvider implements LocationProviderInterface {
requestUtcTime();
}
mGpsMeasurementsProvider.onCapabilitiesUpdated(
mGnssMeasurementsProvider.onCapabilitiesUpdated(
(capabilities & GPS_CAPABILITY_MEASUREMENTS) == GPS_CAPABILITY_MEASUREMENTS);
mGpsNavigationMessageProvider.onCapabilitiesUpdated(
mGnssNavigationMessageProvider.onCapabilitiesUpdated(
(capabilities & GPS_CAPABILITY_NAV_MESSAGES) == GPS_CAPABILITY_NAV_MESSAGES);
}

View File

@@ -16,8 +16,8 @@
package com.android.server.location;
import android.location.GpsMeasurementsEvent;
import android.location.IGpsMeasurementsListener;
import android.location.GnssMeasurementsEvent;
import android.location.IGnssMeasurementsListener;
import android.os.Handler;
import android.os.RemoteException;
import android.util.Log;
@@ -29,27 +29,27 @@ import android.util.Log;
*
* @hide
*/
public abstract class GpsMeasurementsProvider
extends RemoteListenerHelper<IGpsMeasurementsListener> {
private static final String TAG = "GpsMeasurementsProvider";
public abstract class GnssMeasurementsProvider
extends RemoteListenerHelper<IGnssMeasurementsListener> {
private static final String TAG = "GnssMeasurementsProvider";
protected GpsMeasurementsProvider(Handler handler) {
protected GnssMeasurementsProvider(Handler handler) {
super(handler, TAG);
}
public void onMeasurementsAvailable(final GpsMeasurementsEvent event) {
ListenerOperation<IGpsMeasurementsListener> operation =
new ListenerOperation<IGpsMeasurementsListener>() {
public void onMeasurementsAvailable(final GnssMeasurementsEvent event) {
ListenerOperation<IGnssMeasurementsListener> operation =
new ListenerOperation<IGnssMeasurementsListener>() {
@Override
public void execute(IGpsMeasurementsListener listener) throws RemoteException {
listener.onGpsMeasurementsReceived(event);
public void execute(IGnssMeasurementsListener listener) throws RemoteException {
listener.onGnssMeasurementsReceived(event);
}
};
foreach(operation);
}
public void onCapabilitiesUpdated(boolean isGpsMeasurementsSupported) {
setSupported(isGpsMeasurementsSupported);
public void onCapabilitiesUpdated(boolean isGnssMeasurementsSupported) {
setSupported(isGnssMeasurementsSupported);
updateResult();
}
@@ -60,19 +60,19 @@ public abstract class GpsMeasurementsProvider
}
@Override
protected ListenerOperation<IGpsMeasurementsListener> getHandlerOperation(int result) {
protected ListenerOperation<IGnssMeasurementsListener> getHandlerOperation(int result) {
int status;
switch (result) {
case RESULT_SUCCESS:
status = GpsMeasurementsEvent.STATUS_READY;
status = GnssMeasurementsEvent.STATUS_READY;
break;
case RESULT_NOT_AVAILABLE:
case RESULT_NOT_SUPPORTED:
case RESULT_INTERNAL_ERROR:
status = GpsMeasurementsEvent.STATUS_NOT_SUPPORTED;
status = GnssMeasurementsEvent.STATUS_NOT_SUPPORTED;
break;
case RESULT_GPS_LOCATION_DISABLED:
status = GpsMeasurementsEvent.STATUS_GPS_LOCATION_DISABLED;
status = GnssMeasurementsEvent.STATUS_GPS_LOCATION_DISABLED;
break;
case RESULT_UNKNOWN:
return null;
@@ -84,7 +84,7 @@ public abstract class GpsMeasurementsProvider
}
private static class StatusChangedOperation
implements ListenerOperation<IGpsMeasurementsListener> {
implements ListenerOperation<IGnssMeasurementsListener> {
private final int mStatus;
public StatusChangedOperation(int status) {
@@ -92,7 +92,7 @@ public abstract class GpsMeasurementsProvider
}
@Override
public void execute(IGpsMeasurementsListener listener) throws RemoteException {
public void execute(IGnssMeasurementsListener listener) throws RemoteException {
listener.onStatusChanged(mStatus);
}
}

View File

@@ -16,8 +16,8 @@
package com.android.server.location;
import android.location.GpsNavigationMessageEvent;
import android.location.IGpsNavigationMessageListener;
import android.location.GnssNavigationMessageEvent;
import android.location.IGnssNavigationMessageListener;
import android.os.Handler;
import android.os.RemoteException;
import android.util.Log;
@@ -29,28 +29,28 @@ import android.util.Log;
*
* @hide
*/
public abstract class GpsNavigationMessageProvider
extends RemoteListenerHelper<IGpsNavigationMessageListener> {
private static final String TAG = "GpsNavigationMessageProvider";
public abstract class GnssNavigationMessageProvider
extends RemoteListenerHelper<IGnssNavigationMessageListener> {
private static final String TAG = "GnssNavigationMessageProvider";
protected GpsNavigationMessageProvider(Handler handler) {
protected GnssNavigationMessageProvider(Handler handler) {
super(handler, TAG);
}
public void onNavigationMessageAvailable(final GpsNavigationMessageEvent event) {
ListenerOperation<IGpsNavigationMessageListener> operation =
new ListenerOperation<IGpsNavigationMessageListener>() {
public void onNavigationMessageAvailable(final GnssNavigationMessageEvent event) {
ListenerOperation<IGnssNavigationMessageListener> operation =
new ListenerOperation<IGnssNavigationMessageListener>() {
@Override
public void execute(IGpsNavigationMessageListener listener)
public void execute(IGnssNavigationMessageListener listener)
throws RemoteException {
listener.onGpsNavigationMessageReceived(event);
listener.onGnssNavigationMessageReceived(event);
}
};
foreach(operation);
}
public void onCapabilitiesUpdated(boolean isGpsNavigationMessageSupported) {
setSupported(isGpsNavigationMessageSupported);
public void onCapabilitiesUpdated(boolean isGnssNavigationMessageSupported) {
setSupported(isGnssNavigationMessageSupported);
updateResult();
}
@@ -61,19 +61,19 @@ public abstract class GpsNavigationMessageProvider
}
@Override
protected ListenerOperation<IGpsNavigationMessageListener> getHandlerOperation(int result) {
protected ListenerOperation<IGnssNavigationMessageListener> getHandlerOperation(int result) {
int status;
switch (result) {
case RESULT_SUCCESS:
status = GpsNavigationMessageEvent.STATUS_READY;
status = GnssNavigationMessageEvent.STATUS_READY;
break;
case RESULT_NOT_AVAILABLE:
case RESULT_NOT_SUPPORTED:
case RESULT_INTERNAL_ERROR:
status = GpsNavigationMessageEvent.STATUS_NOT_SUPPORTED;
status = GnssNavigationMessageEvent.STATUS_NOT_SUPPORTED;
break;
case RESULT_GPS_LOCATION_DISABLED:
status = GpsNavigationMessageEvent.STATUS_GPS_LOCATION_DISABLED;
status = GnssNavigationMessageEvent.STATUS_GPS_LOCATION_DISABLED;
break;
case RESULT_UNKNOWN:
return null;
@@ -85,7 +85,7 @@ public abstract class GpsNavigationMessageProvider
}
private static class StatusChangedOperation
implements ListenerOperation<IGpsNavigationMessageListener> {
implements ListenerOperation<IGnssNavigationMessageListener> {
private final int mStatus;
public StatusChangedOperation(int status) {
@@ -93,7 +93,7 @@ public abstract class GpsNavigationMessageProvider
}
@Override
public void execute(IGpsNavigationMessageListener listener) throws RemoteException {
public void execute(IGnssNavigationMessageListener listener) throws RemoteException {
listener.onStatusChanged(mStatus);
}
}

View File

@@ -537,11 +537,11 @@ static void android_location_GnssLocationProvider_class_init_native(JNIEnv* env,
method_reportMeasurementData = env->GetMethodID(
clazz,
"reportMeasurementData",
"(Landroid/location/GpsMeasurementsEvent;)V");
"(Landroid/location/GnssMeasurementsEvent;)V");
method_reportNavigationMessages = env->GetMethodID(
clazz,
"reportNavigationMessage",
"(Landroid/location/GpsNavigationMessageEvent;)V");
"(Landroid/location/GnssNavigationMessageEvent;)V");
err = hw_get_module(GPS_HARDWARE_MODULE_ID, (hw_module_t const**)&module);
if (err == 0) {
@@ -974,7 +974,7 @@ static jobject translate_gps_clock(JNIEnv* env, void* data, size_t size) {
GpsClock* clock = reinterpret_cast<GpsClock*>(data);
jclass gpsClockClass = env->FindClass("android/location/GpsClock");
jclass gpsClockClass = env->FindClass("android/location/GnssClock");
jmethodID gpsClockCtor = env->GetMethodID(gpsClockClass, "<init>", "()V");
jobject gpsClockObject = env->NewObject(gpsClockClass, gpsClockCtor);
@@ -1049,264 +1049,264 @@ static jobject translate_gps_measurement(JNIEnv* env, void* data, size_t size) {
const char* floatSignature = "(F)V";
const char* doubleSignature = "(D)V";
jclass gpsMeasurementClass = env->FindClass("android/location/GpsMeasurement");
jmethodID gpsMeasurementCtor = env->GetMethodID(gpsMeasurementClass, "<init>", "()V");
jclass gnssMeasurementClass = env->FindClass("android/location/GnssMeasurement");
jmethodID gnssMeasurementCtor = env->GetMethodID(gnssMeasurementClass, "<init>", "()V");
GpsMeasurement* measurement = reinterpret_cast<GpsMeasurement*>(data);
jobject gpsMeasurementObject = env->NewObject(gpsMeasurementClass, gpsMeasurementCtor);
jobject gnssMeasurementObject = env->NewObject(gnssMeasurementClass, gnssMeasurementCtor);
GpsMeasurementFlags flags = measurement->flags;
jmethodID prnSetterMethod = env->GetMethodID(gpsMeasurementClass, "setPrn", byteSignature);
env->CallVoidMethod(gpsMeasurementObject, prnSetterMethod, measurement->prn);
jmethodID prnSetterMethod = env->GetMethodID(gnssMeasurementClass, "setPrn", byteSignature);
env->CallVoidMethod(gnssMeasurementObject, prnSetterMethod, measurement->prn);
jmethodID timeOffsetSetterMethod =
env->GetMethodID(gpsMeasurementClass, "setTimeOffsetInNs", doubleSignature);
env->GetMethodID(gnssMeasurementClass, "setTimeOffsetInNs", doubleSignature);
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
timeOffsetSetterMethod,
measurement->time_offset_ns);
jmethodID stateSetterMethod = env->GetMethodID(gpsMeasurementClass, "setState", shortSignature);
env->CallVoidMethod(gpsMeasurementObject, stateSetterMethod, measurement->state);
jmethodID stateSetterMethod = env->GetMethodID(gnssMeasurementClass, "setState", shortSignature);
env->CallVoidMethod(gnssMeasurementObject, stateSetterMethod, measurement->state);
jmethodID receivedGpsTowSetterMethod =
env->GetMethodID(gpsMeasurementClass, "setReceivedGpsTowInNs", longSignature);
env->GetMethodID(gnssMeasurementClass, "setReceivedGpsTowInNs", longSignature);
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
receivedGpsTowSetterMethod,
measurement->received_gps_tow_ns);
jmethodID receivedGpsTowUncertaintySetterMethod = env->GetMethodID(
gpsMeasurementClass,
gnssMeasurementClass,
"setReceivedGpsTowUncertaintyInNs",
longSignature);
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
receivedGpsTowUncertaintySetterMethod,
measurement->received_gps_tow_uncertainty_ns);
jmethodID cn0SetterMethod =
env->GetMethodID(gpsMeasurementClass, "setCn0InDbHz", doubleSignature);
env->CallVoidMethod(gpsMeasurementObject, cn0SetterMethod, measurement->c_n0_dbhz);
env->GetMethodID(gnssMeasurementClass, "setCn0InDbHz", doubleSignature);
env->CallVoidMethod(gnssMeasurementObject, cn0SetterMethod, measurement->c_n0_dbhz);
jmethodID pseudorangeRateSetterMethod = env->GetMethodID(
gpsMeasurementClass,
gnssMeasurementClass,
"setPseudorangeRateInMetersPerSec",
doubleSignature);
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
pseudorangeRateSetterMethod,
measurement->pseudorange_rate_mps);
jmethodID pseudorangeRateUncertaintySetterMethod = env->GetMethodID(
gpsMeasurementClass,
gnssMeasurementClass,
"setPseudorangeRateUncertaintyInMetersPerSec",
doubleSignature);
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
pseudorangeRateUncertaintySetterMethod,
measurement->pseudorange_rate_uncertainty_mps);
jmethodID accumulatedDeltaRangeStateSetterMethod =
env->GetMethodID(gpsMeasurementClass, "setAccumulatedDeltaRangeState", shortSignature);
env->GetMethodID(gnssMeasurementClass, "setAccumulatedDeltaRangeState", shortSignature);
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
accumulatedDeltaRangeStateSetterMethod,
measurement->accumulated_delta_range_state);
jmethodID accumulatedDeltaRangeSetterMethod = env->GetMethodID(
gpsMeasurementClass,
gnssMeasurementClass,
"setAccumulatedDeltaRangeInMeters",
doubleSignature);
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
accumulatedDeltaRangeSetterMethod,
measurement->accumulated_delta_range_m);
jmethodID accumulatedDeltaRangeUncertaintySetterMethod = env->GetMethodID(
gpsMeasurementClass,
gnssMeasurementClass,
"setAccumulatedDeltaRangeUncertaintyInMeters",
doubleSignature);
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
accumulatedDeltaRangeUncertaintySetterMethod,
measurement->accumulated_delta_range_uncertainty_m);
if (flags & GPS_MEASUREMENT_HAS_PSEUDORANGE) {
jmethodID setterMethod =
env->GetMethodID(gpsMeasurementClass, "setPseudorangeInMeters", doubleSignature);
env->CallVoidMethod(gpsMeasurementObject, setterMethod, measurement->pseudorange_m);
env->GetMethodID(gnssMeasurementClass, "setPseudorangeInMeters", doubleSignature);
env->CallVoidMethod(gnssMeasurementObject, setterMethod, measurement->pseudorange_m);
}
if (flags & GPS_MEASUREMENT_HAS_PSEUDORANGE_UNCERTAINTY) {
jmethodID setterMethod = env->GetMethodID(
gpsMeasurementClass,
gnssMeasurementClass,
"setPseudorangeUncertaintyInMeters",
doubleSignature);
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
setterMethod,
measurement->pseudorange_uncertainty_m);
}
if (flags & GPS_MEASUREMENT_HAS_CODE_PHASE) {
jmethodID setterMethod =
env->GetMethodID(gpsMeasurementClass, "setCodePhaseInChips", doubleSignature);
env->CallVoidMethod(gpsMeasurementObject, setterMethod, measurement->code_phase_chips);
env->GetMethodID(gnssMeasurementClass, "setCodePhaseInChips", doubleSignature);
env->CallVoidMethod(gnssMeasurementObject, setterMethod, measurement->code_phase_chips);
}
if (flags & GPS_MEASUREMENT_HAS_CODE_PHASE_UNCERTAINTY) {
jmethodID setterMethod = env->GetMethodID(
gpsMeasurementClass,
gnssMeasurementClass,
"setCodePhaseUncertaintyInChips",
doubleSignature);
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
setterMethod,
measurement->code_phase_uncertainty_chips);
}
if (flags & GPS_MEASUREMENT_HAS_CARRIER_FREQUENCY) {
jmethodID setterMethod =
env->GetMethodID(gpsMeasurementClass, "setCarrierFrequencyInHz", floatSignature);
env->GetMethodID(gnssMeasurementClass, "setCarrierFrequencyInHz", floatSignature);
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
setterMethod,
measurement->carrier_frequency_hz);
}
if (flags & GPS_MEASUREMENT_HAS_CARRIER_CYCLES) {
jmethodID setterMethod =
env->GetMethodID(gpsMeasurementClass, "setCarrierCycles", longSignature);
env->CallVoidMethod(gpsMeasurementObject, setterMethod, measurement->carrier_cycles);
env->GetMethodID(gnssMeasurementClass, "setCarrierCycles", longSignature);
env->CallVoidMethod(gnssMeasurementObject, setterMethod, measurement->carrier_cycles);
}
if (flags & GPS_MEASUREMENT_HAS_CARRIER_PHASE) {
jmethodID setterMethod =
env->GetMethodID(gpsMeasurementClass, "setCarrierPhase", doubleSignature);
env->CallVoidMethod(gpsMeasurementObject, setterMethod, measurement->carrier_phase);
env->GetMethodID(gnssMeasurementClass, "setCarrierPhase", doubleSignature);
env->CallVoidMethod(gnssMeasurementObject, setterMethod, measurement->carrier_phase);
}
if (flags & GPS_MEASUREMENT_HAS_CARRIER_PHASE_UNCERTAINTY) {
jmethodID setterMethod = env->GetMethodID(
gpsMeasurementClass,
gnssMeasurementClass,
"setCarrierPhaseUncertainty",
doubleSignature);
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
setterMethod,
measurement->carrier_phase_uncertainty);
}
jmethodID lossOfLockSetterMethod =
env->GetMethodID(gpsMeasurementClass, "setLossOfLock", byteSignature);
env->CallVoidMethod(gpsMeasurementObject, lossOfLockSetterMethod, measurement->loss_of_lock);
env->GetMethodID(gnssMeasurementClass, "setLossOfLock", byteSignature);
env->CallVoidMethod(gnssMeasurementObject, lossOfLockSetterMethod, measurement->loss_of_lock);
if (flags & GPS_MEASUREMENT_HAS_BIT_NUMBER) {
jmethodID setterMethod =
env->GetMethodID(gpsMeasurementClass, "setBitNumber", intSignature);
env->CallVoidMethod(gpsMeasurementObject, setterMethod, measurement->bit_number);
env->GetMethodID(gnssMeasurementClass, "setBitNumber", intSignature);
env->CallVoidMethod(gnssMeasurementObject, setterMethod, measurement->bit_number);
}
if (flags & GPS_MEASUREMENT_HAS_TIME_FROM_LAST_BIT) {
jmethodID setterMethod =
env->GetMethodID(gpsMeasurementClass, "setTimeFromLastBitInMs", shortSignature);
env->GetMethodID(gnssMeasurementClass, "setTimeFromLastBitInMs", shortSignature);
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
setterMethod,
measurement->time_from_last_bit_ms);
}
if (flags & GPS_MEASUREMENT_HAS_DOPPLER_SHIFT) {
jmethodID setterMethod =
env->GetMethodID(gpsMeasurementClass, "setDopplerShiftInHz", doubleSignature);
env->CallVoidMethod(gpsMeasurementObject, setterMethod, measurement->doppler_shift_hz);
env->GetMethodID(gnssMeasurementClass, "setDopplerShiftInHz", doubleSignature);
env->CallVoidMethod(gnssMeasurementObject, setterMethod, measurement->doppler_shift_hz);
}
if (flags & GPS_MEASUREMENT_HAS_DOPPLER_SHIFT_UNCERTAINTY) {
jmethodID setterMethod = env->GetMethodID(
gpsMeasurementClass,
gnssMeasurementClass,
"setDopplerShiftUncertaintyInHz",
doubleSignature);
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
setterMethod,
measurement->doppler_shift_uncertainty_hz);
}
jmethodID multipathIndicatorSetterMethod =
env->GetMethodID(gpsMeasurementClass, "setMultipathIndicator", byteSignature);
env->GetMethodID(gnssMeasurementClass, "setMultipathIndicator", byteSignature);
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
multipathIndicatorSetterMethod,
measurement->multipath_indicator);
if (flags & GPS_MEASUREMENT_HAS_SNR) {
jmethodID setterMethod =
env->GetMethodID(gpsMeasurementClass, "setSnrInDb", doubleSignature);
env->CallVoidMethod(gpsMeasurementObject, setterMethod, measurement->snr_db);
env->GetMethodID(gnssMeasurementClass, "setSnrInDb", doubleSignature);
env->CallVoidMethod(gnssMeasurementObject, setterMethod, measurement->snr_db);
}
if (flags & GPS_MEASUREMENT_HAS_ELEVATION) {
jmethodID setterMethod =
env->GetMethodID(gpsMeasurementClass, "setElevationInDeg", doubleSignature);
env->CallVoidMethod(gpsMeasurementObject, setterMethod, measurement->elevation_deg);
env->GetMethodID(gnssMeasurementClass, "setElevationInDeg", doubleSignature);
env->CallVoidMethod(gnssMeasurementObject, setterMethod, measurement->elevation_deg);
}
if (flags & GPS_MEASUREMENT_HAS_ELEVATION_UNCERTAINTY) {
jmethodID setterMethod =
env->GetMethodID(gpsMeasurementClass, "setElevationUncertaintyInDeg", doubleSignature);
env->GetMethodID(gnssMeasurementClass, "setElevationUncertaintyInDeg", doubleSignature);
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
setterMethod,
measurement->elevation_uncertainty_deg);
}
if (flags & GPS_MEASUREMENT_HAS_AZIMUTH) {
jmethodID setterMethod =
env->GetMethodID(gpsMeasurementClass, "setAzimuthInDeg", doubleSignature);
env->CallVoidMethod(gpsMeasurementObject, setterMethod, measurement->azimuth_deg);
env->GetMethodID(gnssMeasurementClass, "setAzimuthInDeg", doubleSignature);
env->CallVoidMethod(gnssMeasurementObject, setterMethod, measurement->azimuth_deg);
}
if (flags & GPS_MEASUREMENT_HAS_AZIMUTH_UNCERTAINTY) {
jmethodID setterMethod = env->GetMethodID(
gpsMeasurementClass,
gnssMeasurementClass,
"setAzimuthUncertaintyInDeg",
doubleSignature);
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
setterMethod,
measurement->azimuth_uncertainty_deg);
}
jmethodID usedInFixSetterMethod = env->GetMethodID(gpsMeasurementClass, "setUsedInFix", "(Z)V");
jmethodID usedInFixSetterMethod = env->GetMethodID(gnssMeasurementClass, "setUsedInFix", "(Z)V");
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
usedInFixSetterMethod,
(flags & GPS_MEASUREMENT_HAS_USED_IN_FIX) && measurement->used_in_fix);
if (size == sizeof(GpsMeasurement)) {
jmethodID setterMethod =
env->GetMethodID(gpsMeasurementClass,
env->GetMethodID(gnssMeasurementClass,
"setPseudorangeRateCarrierInMetersPerSec",
doubleSignature);
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
setterMethod,
measurement->pseudorange_rate_carrier_mps);
setterMethod =
env->GetMethodID(gpsMeasurementClass,
env->GetMethodID(gnssMeasurementClass,
"setPseudorangeRateCarrierUncertaintyInMetersPerSec",
doubleSignature);
env->CallVoidMethod(
gpsMeasurementObject,
gnssMeasurementObject,
setterMethod,
measurement->pseudorange_rate_carrier_uncertainty_mps);
}
env->DeleteLocalRef(gpsMeasurementClass);
return gpsMeasurementObject;
env->DeleteLocalRef(gnssMeasurementClass);
return gnssMeasurementObject;
}
/**
@@ -1321,23 +1321,23 @@ static jobjectArray translate_gps_measurements(JNIEnv* env, void* data) {
return NULL;
}
jclass gpsMeasurementClass = env->FindClass("android/location/GpsMeasurement");
jobjectArray gpsMeasurementArray = env->NewObjectArray(
jclass gnssMeasurementClass = env->FindClass("android/location/GnssMeasurement");
jobjectArray gnssMeasurementArray = env->NewObjectArray(
measurementCount,
gpsMeasurementClass,
gnssMeasurementClass,
NULL /* initialElement */);
for (uint16_t i = 0; i < measurementCount; ++i) {
jobject gpsMeasurement = translate_gps_measurement(
jobject gnssMeasurement = translate_gps_measurement(
env,
&(gps_data->measurements[i]),
sizeof(gps_data->measurements[0]));
env->SetObjectArrayElement(gpsMeasurementArray, i, gpsMeasurement);
env->DeleteLocalRef(gpsMeasurement);
env->SetObjectArrayElement(gnssMeasurementArray, i, gnssMeasurement);
env->DeleteLocalRef(gnssMeasurement);
}
env->DeleteLocalRef(gpsMeasurementClass);
return gpsMeasurementArray;
env->DeleteLocalRef(gnssMeasurementClass);
return gnssMeasurementArray;
}
static void measurement_callback(GpsData* data) {
@@ -1360,25 +1360,25 @@ static void measurement_callback(GpsData* data) {
gpsClock = translate_gps_clock(env, &data->clock, sizeof(GpsClock_v1));
measurementArray = translate_gps_measurements<GpsData_v1>(env, data);
}
jclass gpsMeasurementsEventClass = env->FindClass("android/location/GpsMeasurementsEvent");
jmethodID gpsMeasurementsEventCtor = env->GetMethodID(
gpsMeasurementsEventClass,
jclass gnssMeasurementsEventClass = env->FindClass("android/location/GnssMeasurementsEvent");
jmethodID gnssMeasurementsEventCtor = env->GetMethodID(
gnssMeasurementsEventClass,
"<init>",
"(Landroid/location/GpsClock;[Landroid/location/GpsMeasurement;)V");
"(Landroid/location/GnssClock;[Landroid/location/GnssMeasurement;)V");
jobject gpsMeasurementsEvent = env->NewObject(
gpsMeasurementsEventClass,
gpsMeasurementsEventCtor,
jobject gnssMeasurementsEvent = env->NewObject(
gnssMeasurementsEventClass,
gnssMeasurementsEventCtor,
gpsClock,
measurementArray);
env->CallVoidMethod(mCallbacksObj, method_reportMeasurementData, gpsMeasurementsEvent);
env->CallVoidMethod(mCallbacksObj, method_reportMeasurementData, gnssMeasurementsEvent);
checkAndClearExceptionFromCallback(env, __FUNCTION__);
env->DeleteLocalRef(gpsClock);
env->DeleteLocalRef(measurementArray);
env->DeleteLocalRef(gpsMeasurementsEventClass);
env->DeleteLocalRef(gpsMeasurementsEvent);
env->DeleteLocalRef(gnssMeasurementsEventClass);
env->DeleteLocalRef(gnssMeasurementsEvent);
}
GpsMeasurementCallbacks sGpsMeasurementCallbacks = {
@@ -1432,7 +1432,7 @@ static jobject translate_gps_navigation_message(JNIEnv* env, GpsNavigationMessag
return NULL;
}
jclass navigationMessageClass = env->FindClass("android/location/GpsNavigationMessage");
jclass navigationMessageClass = env->FindClass("android/location/GnssNavigationMessage");
jmethodID navigationMessageCtor = env->GetMethodID(navigationMessageClass, "<init>", "()V");
jobject navigationMessageObject = env->NewObject(navigationMessageClass, navigationMessageCtor);
@@ -1470,11 +1470,11 @@ static void navigation_message_callback(GpsNavigationMessage* message) {
jobject navigationMessage = translate_gps_navigation_message(env, message);
jclass navigationMessageEventClass =
env->FindClass("android/location/GpsNavigationMessageEvent");
env->FindClass("android/location/GnssNavigationMessageEvent");
jmethodID navigationMessageEventCtor = env->GetMethodID(
navigationMessageEventClass,
"<init>",
"(Landroid/location/GpsNavigationMessage;)V");
"(Landroid/location/GnssNavigationMessage;)V");
jobject navigationMessageEvent = env->NewObject(
navigationMessageEventClass,
navigationMessageEventCtor,