xref: /aosp_15_r20/prebuilts/sdk/34/system/api/framework-location.txt (revision 344a7f5ef16c479e7a7f54ee6567a9d112f9e72b)
1// Signature format: 2.0
2
3package android.location {
4  public abstract class BatchedLocationCallback {
5    ctor public BatchedLocationCallback();
6    method public void onLocationBatch(java.util.List<android.location.Location>);
7  }
8
9  public final class CorrelationVector implements android.os.Parcelable {
10    method public int describeContents();
11    method @FloatRange(from=0.0f) public double getFrequencyOffsetMetersPerSecond();
12    method @NonNull public int[] getMagnitude();
13    method @FloatRange(from=0.0f) public double getSamplingStartMeters();
14    method @FloatRange(from=0.0f, fromInclusive=false) public double getSamplingWidthMeters();
15    method public void writeToParcel(@NonNull android.os.Parcel, int);
16    field @NonNull public static final android.os.Parcelable.Creator<android.location.CorrelationVector> CREATOR;
17  }
18
19  public static final class CorrelationVector.Builder {
20    ctor public CorrelationVector.Builder();
21    method @NonNull public android.location.CorrelationVector build();
22    method @NonNull public android.location.CorrelationVector.Builder setFrequencyOffsetMetersPerSecond(@FloatRange(from=0.0f) double);
23    method @NonNull public android.location.CorrelationVector.Builder setMagnitude(@NonNull int[]);
24    method @NonNull public android.location.CorrelationVector.Builder setSamplingStartMeters(@FloatRange(from=0.0f) double);
25    method @NonNull public android.location.CorrelationVector.Builder setSamplingWidthMeters(@FloatRange(from=0.0f, fromInclusive=false) double);
26  }
27
28  public final class Country implements android.os.Parcelable {
29    ctor public Country(@NonNull String, int);
30    method public int describeContents();
31    method @NonNull public String getCountryCode();
32    method public int getSource();
33    method public void writeToParcel(@NonNull android.os.Parcel, int);
34    field public static final int COUNTRY_SOURCE_LOCALE = 3; // 0x3
35    field public static final int COUNTRY_SOURCE_LOCATION = 1; // 0x1
36    field public static final int COUNTRY_SOURCE_NETWORK = 0; // 0x0
37    field public static final int COUNTRY_SOURCE_SIM = 2; // 0x2
38    field @NonNull public static final android.os.Parcelable.Creator<android.location.Country> CREATOR;
39  }
40
41  public class CountryDetector {
42    method public void registerCountryDetectorCallback(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.location.Country>);
43    method public void unregisterCountryDetectorCallback(@NonNull java.util.function.Consumer<android.location.Country>);
44  }
45
46  public final class GnssCapabilities implements android.os.Parcelable {
47    method @Deprecated public boolean hasMeasurementCorrectionsReflectingPane();
48    method @Deprecated public boolean hasNavMessages();
49    method @Deprecated public boolean hasSatelliteBlacklist();
50  }
51
52  public final class GnssExcessPathInfo implements android.os.Parcelable {
53    method public int describeContents();
54    method @FloatRange(from=0.0f) public float getAttenuationDb();
55    method @FloatRange(from=0.0f) public float getExcessPathLengthMeters();
56    method @FloatRange(from=0.0f) public float getExcessPathLengthUncertaintyMeters();
57    method @NonNull public android.location.GnssReflectingPlane getReflectingPlane();
58    method public boolean hasAttenuation();
59    method public boolean hasExcessPathLength();
60    method public boolean hasExcessPathLengthUncertainty();
61    method public boolean hasReflectingPlane();
62    method public void writeToParcel(@NonNull android.os.Parcel, int);
63    field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssExcessPathInfo> CREATOR;
64  }
65
66  public static final class GnssExcessPathInfo.Builder {
67    ctor public GnssExcessPathInfo.Builder();
68    method @NonNull public android.location.GnssExcessPathInfo build();
69    method @NonNull public android.location.GnssExcessPathInfo.Builder clearAttenuationDb();
70    method @NonNull public android.location.GnssExcessPathInfo.Builder clearExcessPathLengthMeters();
71    method @NonNull public android.location.GnssExcessPathInfo.Builder clearExcessPathLengthUncertaintyMeters();
72    method @NonNull public android.location.GnssExcessPathInfo.Builder setAttenuationDb(@FloatRange(from=0.0f) float);
73    method @NonNull public android.location.GnssExcessPathInfo.Builder setExcessPathLengthMeters(@FloatRange(from=0.0f) float);
74    method @NonNull public android.location.GnssExcessPathInfo.Builder setExcessPathLengthUncertaintyMeters(@FloatRange(from=0.0f) float);
75    method @NonNull public android.location.GnssExcessPathInfo.Builder setReflectingPlane(@Nullable android.location.GnssReflectingPlane);
76  }
77
78  public final class GnssMeasurement implements android.os.Parcelable {
79    method @Nullable public java.util.Collection<android.location.CorrelationVector> getCorrelationVectors();
80    method @Nullable public android.location.SatellitePvt getSatellitePvt();
81    method public boolean hasCorrelationVectors();
82    method public boolean hasSatellitePvt();
83  }
84
85  public final class GnssMeasurementCorrections implements android.os.Parcelable {
86    method public int describeContents();
87    method @FloatRange(from=-1000.0F, to=10000.0f) public double getAltitudeMeters();
88    method @FloatRange(from=0.0f, to=360.0f) public float getEnvironmentBearingDegrees();
89    method @FloatRange(from=0.0f, to=180.0f) public float getEnvironmentBearingUncertaintyDegrees();
90    method @FloatRange(from=0.0f) public double getHorizontalPositionUncertaintyMeters();
91    method @FloatRange(from=-90.0F, to=90.0f) public double getLatitudeDegrees();
92    method @FloatRange(from=-180.0F, to=180.0f) public double getLongitudeDegrees();
93    method @NonNull public java.util.List<android.location.GnssSingleSatCorrection> getSingleSatelliteCorrectionList();
94    method @IntRange(from=0) public long getToaGpsNanosecondsOfWeek();
95    method @FloatRange(from=0.0f) public double getVerticalPositionUncertaintyMeters();
96    method public boolean hasEnvironmentBearing();
97    method public void writeToParcel(@NonNull android.os.Parcel, int);
98    field public static final android.os.Parcelable.Creator<android.location.GnssMeasurementCorrections> CREATOR;
99  }
100
101  public static final class GnssMeasurementCorrections.Builder {
102    ctor public GnssMeasurementCorrections.Builder();
103    method @NonNull public android.location.GnssMeasurementCorrections build();
104    method @NonNull public android.location.GnssMeasurementCorrections.Builder setAltitudeMeters(@FloatRange(from=-1000.0F, to=10000.0f) double);
105    method @NonNull public android.location.GnssMeasurementCorrections.Builder setEnvironmentBearingDegrees(@FloatRange(from=0.0f, to=360.0f) float);
106    method @NonNull public android.location.GnssMeasurementCorrections.Builder setEnvironmentBearingUncertaintyDegrees(@FloatRange(from=0.0f, to=180.0f) float);
107    method @NonNull public android.location.GnssMeasurementCorrections.Builder setHorizontalPositionUncertaintyMeters(@FloatRange(from=0.0f) double);
108    method @NonNull public android.location.GnssMeasurementCorrections.Builder setLatitudeDegrees(@FloatRange(from=-90.0F, to=90.0f) double);
109    method @NonNull public android.location.GnssMeasurementCorrections.Builder setLongitudeDegrees(@FloatRange(from=-180.0F, to=180.0f) double);
110    method @NonNull public android.location.GnssMeasurementCorrections.Builder setSingleSatelliteCorrectionList(@NonNull java.util.List<android.location.GnssSingleSatCorrection>);
111    method @NonNull public android.location.GnssMeasurementCorrections.Builder setToaGpsNanosecondsOfWeek(@IntRange(from=0) long);
112    method @NonNull public android.location.GnssMeasurementCorrections.Builder setVerticalPositionUncertaintyMeters(@FloatRange(from=0.0f) double);
113  }
114
115  public final class GnssMeasurementRequest implements android.os.Parcelable {
116    method public boolean isCorrelationVectorOutputsEnabled();
117  }
118
119  public static final class GnssMeasurementRequest.Builder {
120    method @NonNull public android.location.GnssMeasurementRequest.Builder setCorrelationVectorOutputsEnabled(boolean);
121  }
122
123  public final class GnssReflectingPlane implements android.os.Parcelable {
124    method public int describeContents();
125    method @FloatRange(from=-1000.0F, to=10000.0f) public double getAltitudeMeters();
126    method @FloatRange(from=0.0f, to=360.0f) public double getAzimuthDegrees();
127    method @FloatRange(from=-90.0F, to=90.0f) public double getLatitudeDegrees();
128    method @FloatRange(from=-180.0F, to=180.0f) public double getLongitudeDegrees();
129    method public void writeToParcel(@NonNull android.os.Parcel, int);
130    field public static final android.os.Parcelable.Creator<android.location.GnssReflectingPlane> CREATOR;
131  }
132
133  public static final class GnssReflectingPlane.Builder {
134    ctor public GnssReflectingPlane.Builder();
135    method @NonNull public android.location.GnssReflectingPlane build();
136    method @NonNull public android.location.GnssReflectingPlane.Builder setAltitudeMeters(@FloatRange(from=-1000.0F, to=10000.0f) double);
137    method @NonNull public android.location.GnssReflectingPlane.Builder setAzimuthDegrees(@FloatRange(from=0.0f, to=360.0f) double);
138    method @NonNull public android.location.GnssReflectingPlane.Builder setLatitudeDegrees(@FloatRange(from=-90.0F, to=90.0f) double);
139    method @NonNull public android.location.GnssReflectingPlane.Builder setLongitudeDegrees(@FloatRange(from=-180.0F, to=180.0f) double);
140  }
141
142  public final class GnssRequest implements android.os.Parcelable {
143    method public int describeContents();
144    method public boolean isFullTracking();
145    method public void writeToParcel(@NonNull android.os.Parcel, int);
146    field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssRequest> CREATOR;
147  }
148
149  public static final class GnssRequest.Builder {
150    ctor public GnssRequest.Builder();
151    ctor public GnssRequest.Builder(@NonNull android.location.GnssRequest);
152    method @NonNull public android.location.GnssRequest build();
153    method @NonNull public android.location.GnssRequest.Builder setFullTracking(boolean);
154  }
155
156  public final class GnssSingleSatCorrection implements android.os.Parcelable {
157    method public int describeContents();
158    method @FloatRange(from=0.0f, fromInclusive=false) public float getCarrierFrequencyHz();
159    method @FloatRange(from=0.0f) public float getCombinedAttenuationDb();
160    method public int getConstellationType();
161    method @FloatRange(from=0.0f) public float getExcessPathLengthMeters();
162    method @FloatRange(from=0.0f) public float getExcessPathLengthUncertaintyMeters();
163    method @NonNull public java.util.List<android.location.GnssExcessPathInfo> getGnssExcessPathInfoList();
164    method @FloatRange(from=0.0f, to=1.0f) public float getProbabilityLineOfSight();
165    method @Deprecated @Nullable public android.location.GnssReflectingPlane getReflectingPlane();
166    method @IntRange(from=0) public int getSatelliteId();
167    method public boolean hasCombinedAttenuation();
168    method public boolean hasExcessPathLength();
169    method public boolean hasExcessPathLengthUncertainty();
170    method @Deprecated public boolean hasReflectingPlane();
171    method public boolean hasValidSatelliteLineOfSight();
172    method public void writeToParcel(@NonNull android.os.Parcel, int);
173    field public static final android.os.Parcelable.Creator<android.location.GnssSingleSatCorrection> CREATOR;
174  }
175
176  public static final class GnssSingleSatCorrection.Builder {
177    ctor public GnssSingleSatCorrection.Builder();
178    method @NonNull public android.location.GnssSingleSatCorrection build();
179    method @NonNull public android.location.GnssSingleSatCorrection.Builder clearCombinedAttenuationDb();
180    method @NonNull public android.location.GnssSingleSatCorrection.Builder clearExcessPathLengthMeters();
181    method @NonNull public android.location.GnssSingleSatCorrection.Builder clearExcessPathLengthUncertaintyMeters();
182    method @NonNull public android.location.GnssSingleSatCorrection.Builder clearProbabilityLineOfSight();
183    method @NonNull public android.location.GnssSingleSatCorrection.Builder setCarrierFrequencyHz(@FloatRange(from=0.0f, fromInclusive=false) float);
184    method @NonNull public android.location.GnssSingleSatCorrection.Builder setCombinedAttenuationDb(@FloatRange(from=0.0f) float);
185    method @NonNull public android.location.GnssSingleSatCorrection.Builder setConstellationType(int);
186    method @NonNull public android.location.GnssSingleSatCorrection.Builder setExcessPathLengthMeters(@FloatRange(from=0.0f) float);
187    method @NonNull public android.location.GnssSingleSatCorrection.Builder setExcessPathLengthUncertaintyMeters(@FloatRange(from=0.0f) float);
188    method @NonNull public android.location.GnssSingleSatCorrection.Builder setGnssExcessPathInfoList(@NonNull java.util.List<android.location.GnssExcessPathInfo>);
189    method @NonNull public android.location.GnssSingleSatCorrection.Builder setProbabilityLineOfSight(@FloatRange(from=0.0f, to=1.0f) float);
190    method @Deprecated @NonNull public android.location.GnssSingleSatCorrection.Builder setReflectingPlane(@Nullable android.location.GnssReflectingPlane);
191    method @NonNull public android.location.GnssSingleSatCorrection.Builder setSatelliteId(@IntRange(from=0) int);
192  }
193
194  @Deprecated public class GpsClock implements android.os.Parcelable {
195    method @Deprecated public int describeContents();
196    method @Deprecated public double getBiasInNs();
197    method @Deprecated public double getBiasUncertaintyInNs();
198    method @Deprecated public double getDriftInNsPerSec();
199    method @Deprecated public double getDriftUncertaintyInNsPerSec();
200    method @Deprecated public long getFullBiasInNs();
201    method @Deprecated public short getLeapSecond();
202    method @Deprecated public long getTimeInNs();
203    method @Deprecated public double getTimeUncertaintyInNs();
204    method @Deprecated public byte getType();
205    method @Deprecated public boolean hasBiasInNs();
206    method @Deprecated public boolean hasBiasUncertaintyInNs();
207    method @Deprecated public boolean hasDriftInNsPerSec();
208    method @Deprecated public boolean hasDriftUncertaintyInNsPerSec();
209    method @Deprecated public boolean hasFullBiasInNs();
210    method @Deprecated public boolean hasLeapSecond();
211    method @Deprecated public boolean hasTimeUncertaintyInNs();
212    method @Deprecated public void reset();
213    method @Deprecated public void resetBiasInNs();
214    method @Deprecated public void resetBiasUncertaintyInNs();
215    method @Deprecated public void resetDriftInNsPerSec();
216    method @Deprecated public void resetDriftUncertaintyInNsPerSec();
217    method @Deprecated public void resetFullBiasInNs();
218    method @Deprecated public void resetLeapSecond();
219    method @Deprecated public void resetTimeUncertaintyInNs();
220    method @Deprecated public void set(android.location.GpsClock);
221    method @Deprecated public void setBiasInNs(double);
222    method @Deprecated public void setBiasUncertaintyInNs(double);
223    method @Deprecated public void setDriftInNsPerSec(double);
224    method @Deprecated public void setDriftUncertaintyInNsPerSec(double);
225    method @Deprecated public void setFullBiasInNs(long);
226    method @Deprecated public void setLeapSecond(short);
227    method @Deprecated public void setTimeInNs(long);
228    method @Deprecated public void setTimeUncertaintyInNs(double);
229    method @Deprecated public void setType(byte);
230    method @Deprecated public void writeToParcel(android.os.Parcel, int);
231    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.location.GpsClock> CREATOR;
232    field @Deprecated public static final byte TYPE_GPS_TIME = 2; // 0x2
233    field @Deprecated public static final byte TYPE_LOCAL_HW_TIME = 1; // 0x1
234    field @Deprecated public static final byte TYPE_UNKNOWN = 0; // 0x0
235  }
236
237  @Deprecated public class GpsMeasurement implements android.os.Parcelable {
238    method @Deprecated public int describeContents();
239    method @Deprecated public double getAccumulatedDeltaRangeInMeters();
240    method @Deprecated public short getAccumulatedDeltaRangeState();
241    method @Deprecated public double getAccumulatedDeltaRangeUncertaintyInMeters();
242    method @Deprecated public double getAzimuthInDeg();
243    method @Deprecated public double getAzimuthUncertaintyInDeg();
244    method @Deprecated public int getBitNumber();
245    method @Deprecated public long getCarrierCycles();
246    method @Deprecated public float getCarrierFrequencyInHz();
247    method @Deprecated public double getCarrierPhase();
248    method @Deprecated public double getCarrierPhaseUncertainty();
249    method @Deprecated public double getCn0InDbHz();
250    method @Deprecated public double getCodePhaseInChips();
251    method @Deprecated public double getCodePhaseUncertaintyInChips();
252    method @Deprecated public double getDopplerShiftInHz();
253    method @Deprecated public double getDopplerShiftUncertaintyInHz();
254    method @Deprecated public double getElevationInDeg();
255    method @Deprecated public double getElevationUncertaintyInDeg();
256    method @Deprecated public byte getLossOfLock();
257    method @Deprecated public byte getMultipathIndicator();
258    method @Deprecated public byte getPrn();
259    method @Deprecated public double getPseudorangeInMeters();
260    method @Deprecated public double getPseudorangeRateInMetersPerSec();
261    method @Deprecated public double getPseudorangeRateUncertaintyInMetersPerSec();
262    method @Deprecated public double getPseudorangeUncertaintyInMeters();
263    method @Deprecated public long getReceivedGpsTowInNs();
264    method @Deprecated public long getReceivedGpsTowUncertaintyInNs();
265    method @Deprecated public double getSnrInDb();
266    method @Deprecated public short getState();
267    method @Deprecated public short getTimeFromLastBitInMs();
268    method @Deprecated public double getTimeOffsetInNs();
269    method @Deprecated public boolean hasAzimuthInDeg();
270    method @Deprecated public boolean hasAzimuthUncertaintyInDeg();
271    method @Deprecated public boolean hasBitNumber();
272    method @Deprecated public boolean hasCarrierCycles();
273    method @Deprecated public boolean hasCarrierFrequencyInHz();
274    method @Deprecated public boolean hasCarrierPhase();
275    method @Deprecated public boolean hasCarrierPhaseUncertainty();
276    method @Deprecated public boolean hasCodePhaseInChips();
277    method @Deprecated public boolean hasCodePhaseUncertaintyInChips();
278    method @Deprecated public boolean hasDopplerShiftInHz();
279    method @Deprecated public boolean hasDopplerShiftUncertaintyInHz();
280    method @Deprecated public boolean hasElevationInDeg();
281    method @Deprecated public boolean hasElevationUncertaintyInDeg();
282    method @Deprecated public boolean hasPseudorangeInMeters();
283    method @Deprecated public boolean hasPseudorangeUncertaintyInMeters();
284    method @Deprecated public boolean hasSnrInDb();
285    method @Deprecated public boolean hasTimeFromLastBitInMs();
286    method @Deprecated public boolean isPseudorangeRateCorrected();
287    method @Deprecated public boolean isUsedInFix();
288    method @Deprecated public void reset();
289    method @Deprecated public void resetAzimuthInDeg();
290    method @Deprecated public void resetAzimuthUncertaintyInDeg();
291    method @Deprecated public void resetBitNumber();
292    method @Deprecated public void resetCarrierCycles();
293    method @Deprecated public void resetCarrierFrequencyInHz();
294    method @Deprecated public void resetCarrierPhase();
295    method @Deprecated public void resetCarrierPhaseUncertainty();
296    method @Deprecated public void resetCodePhaseInChips();
297    method @Deprecated public void resetCodePhaseUncertaintyInChips();
298    method @Deprecated public void resetDopplerShiftInHz();
299    method @Deprecated public void resetDopplerShiftUncertaintyInHz();
300    method @Deprecated public void resetElevationInDeg();
301    method @Deprecated public void resetElevationUncertaintyInDeg();
302    method @Deprecated public void resetPseudorangeInMeters();
303    method @Deprecated public void resetPseudorangeUncertaintyInMeters();
304    method @Deprecated public void resetSnrInDb();
305    method @Deprecated public void resetTimeFromLastBitInMs();
306    method @Deprecated public void set(android.location.GpsMeasurement);
307    method @Deprecated public void setAccumulatedDeltaRangeInMeters(double);
308    method @Deprecated public void setAccumulatedDeltaRangeState(short);
309    method @Deprecated public void setAccumulatedDeltaRangeUncertaintyInMeters(double);
310    method @Deprecated public void setAzimuthInDeg(double);
311    method @Deprecated public void setAzimuthUncertaintyInDeg(double);
312    method @Deprecated public void setBitNumber(int);
313    method @Deprecated public void setCarrierCycles(long);
314    method @Deprecated public void setCarrierFrequencyInHz(float);
315    method @Deprecated public void setCarrierPhase(double);
316    method @Deprecated public void setCarrierPhaseUncertainty(double);
317    method @Deprecated public void setCn0InDbHz(double);
318    method @Deprecated public void setCodePhaseInChips(double);
319    method @Deprecated public void setCodePhaseUncertaintyInChips(double);
320    method @Deprecated public void setDopplerShiftInHz(double);
321    method @Deprecated public void setDopplerShiftUncertaintyInHz(double);
322    method @Deprecated public void setElevationInDeg(double);
323    method @Deprecated public void setElevationUncertaintyInDeg(double);
324    method @Deprecated public void setLossOfLock(byte);
325    method @Deprecated public void setMultipathIndicator(byte);
326    method @Deprecated public void setPrn(byte);
327    method @Deprecated public void setPseudorangeInMeters(double);
328    method @Deprecated public void setPseudorangeRateInMetersPerSec(double);
329    method @Deprecated public void setPseudorangeRateUncertaintyInMetersPerSec(double);
330    method @Deprecated public void setPseudorangeUncertaintyInMeters(double);
331    method @Deprecated public void setReceivedGpsTowInNs(long);
332    method @Deprecated public void setReceivedGpsTowUncertaintyInNs(long);
333    method @Deprecated public void setSnrInDb(double);
334    method @Deprecated public void setState(short);
335    method @Deprecated public void setTimeFromLastBitInMs(short);
336    method @Deprecated public void setTimeOffsetInNs(double);
337    method @Deprecated public void setUsedInFix(boolean);
338    method @Deprecated public void writeToParcel(android.os.Parcel, int);
339    field @Deprecated public static final short ADR_STATE_CYCLE_SLIP = 4; // 0x4
340    field @Deprecated public static final short ADR_STATE_RESET = 2; // 0x2
341    field @Deprecated public static final short ADR_STATE_UNKNOWN = 0; // 0x0
342    field @Deprecated public static final short ADR_STATE_VALID = 1; // 0x1
343    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.location.GpsMeasurement> CREATOR;
344    field @Deprecated public static final byte LOSS_OF_LOCK_CYCLE_SLIP = 2; // 0x2
345    field @Deprecated public static final byte LOSS_OF_LOCK_OK = 1; // 0x1
346    field @Deprecated public static final byte LOSS_OF_LOCK_UNKNOWN = 0; // 0x0
347    field @Deprecated public static final byte MULTIPATH_INDICATOR_DETECTED = 1; // 0x1
348    field @Deprecated public static final byte MULTIPATH_INDICATOR_NOT_USED = 2; // 0x2
349    field @Deprecated public static final byte MULTIPATH_INDICATOR_UNKNOWN = 0; // 0x0
350    field @Deprecated public static final short STATE_BIT_SYNC = 2; // 0x2
351    field @Deprecated public static final short STATE_CODE_LOCK = 1; // 0x1
352    field @Deprecated public static final short STATE_MSEC_AMBIGUOUS = 16; // 0x10
353    field @Deprecated public static final short STATE_SUBFRAME_SYNC = 4; // 0x4
354    field @Deprecated public static final short STATE_TOW_DECODED = 8; // 0x8
355    field @Deprecated public static final short STATE_UNKNOWN = 0; // 0x0
356  }
357
358  @Deprecated public class GpsMeasurementsEvent implements android.os.Parcelable {
359    ctor @Deprecated public GpsMeasurementsEvent(android.location.GpsClock, android.location.GpsMeasurement[]);
360    method @Deprecated public int describeContents();
361    method @Deprecated @NonNull public android.location.GpsClock getClock();
362    method @Deprecated @NonNull public java.util.Collection<android.location.GpsMeasurement> getMeasurements();
363    method @Deprecated public void writeToParcel(android.os.Parcel, int);
364    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.location.GpsMeasurementsEvent> CREATOR;
365    field @Deprecated public static final int STATUS_GPS_LOCATION_DISABLED = 2; // 0x2
366    field @Deprecated public static final int STATUS_NOT_SUPPORTED = 0; // 0x0
367    field @Deprecated public static final int STATUS_READY = 1; // 0x1
368  }
369
370  @Deprecated public static interface GpsMeasurementsEvent.Listener {
371    method @Deprecated public void onGpsMeasurementsReceived(android.location.GpsMeasurementsEvent);
372    method @Deprecated public void onStatusChanged(int);
373  }
374
375  @Deprecated public class GpsNavigationMessage implements android.os.Parcelable {
376    method @Deprecated public int describeContents();
377    method @Deprecated @NonNull public byte[] getData();
378    method @Deprecated public short getMessageId();
379    method @Deprecated public byte getPrn();
380    method @Deprecated public short getStatus();
381    method @Deprecated public short getSubmessageId();
382    method @Deprecated public byte getType();
383    method @Deprecated public void reset();
384    method @Deprecated public void set(android.location.GpsNavigationMessage);
385    method @Deprecated public void setData(byte[]);
386    method @Deprecated public void setMessageId(short);
387    method @Deprecated public void setPrn(byte);
388    method @Deprecated public void setStatus(short);
389    method @Deprecated public void setSubmessageId(short);
390    method @Deprecated public void setType(byte);
391    method @Deprecated public void writeToParcel(android.os.Parcel, int);
392    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.location.GpsNavigationMessage> CREATOR;
393    field @Deprecated public static final short STATUS_PARITY_PASSED = 1; // 0x1
394    field @Deprecated public static final short STATUS_PARITY_REBUILT = 2; // 0x2
395    field @Deprecated public static final short STATUS_UNKNOWN = 0; // 0x0
396    field @Deprecated public static final byte TYPE_CNAV2 = 4; // 0x4
397    field @Deprecated public static final byte TYPE_L1CA = 1; // 0x1
398    field @Deprecated public static final byte TYPE_L2CNAV = 2; // 0x2
399    field @Deprecated public static final byte TYPE_L5CNAV = 3; // 0x3
400    field @Deprecated public static final byte TYPE_UNKNOWN = 0; // 0x0
401  }
402
403  @Deprecated public class GpsNavigationMessageEvent implements android.os.Parcelable {
404    ctor @Deprecated public GpsNavigationMessageEvent(android.location.GpsNavigationMessage);
405    method @Deprecated public int describeContents();
406    method @Deprecated @NonNull public android.location.GpsNavigationMessage getNavigationMessage();
407    method @Deprecated public void writeToParcel(android.os.Parcel, int);
408    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.location.GpsNavigationMessageEvent> CREATOR;
409    field @Deprecated public static int STATUS_GPS_LOCATION_DISABLED;
410    field @Deprecated public static int STATUS_NOT_SUPPORTED;
411    field @Deprecated public static int STATUS_READY;
412  }
413
414  @Deprecated public static interface GpsNavigationMessageEvent.Listener {
415    method @Deprecated public void onGpsNavigationMessageReceived(android.location.GpsNavigationMessageEvent);
416    method @Deprecated public void onStatusChanged(int);
417  }
418
419  public final class LastLocationRequest implements android.os.Parcelable {
420    method public int describeContents();
421    method public boolean isAdasGnssBypass();
422    method public boolean isHiddenFromAppOps();
423    method public boolean isLocationSettingsIgnored();
424    method public void writeToParcel(@NonNull android.os.Parcel, int);
425    field @NonNull public static final android.os.Parcelable.Creator<android.location.LastLocationRequest> CREATOR;
426  }
427
428  public static final class LastLocationRequest.Builder {
429    ctor public LastLocationRequest.Builder();
430    ctor public LastLocationRequest.Builder(@NonNull android.location.LastLocationRequest);
431    method @NonNull public android.location.LastLocationRequest build();
432    method @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_BYPASS) public android.location.LastLocationRequest.Builder setAdasGnssBypass(boolean);
433    method @NonNull @RequiresPermission(android.Manifest.permission.UPDATE_APP_OPS_STATS) public android.location.LastLocationRequest.Builder setHiddenFromAppOps(boolean);
434    method @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_BYPASS) public android.location.LastLocationRequest.Builder setLocationSettingsIgnored(boolean);
435  }
436
437  public class LocationManager {
438    method @RequiresPermission(allOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.INTERACT_ACROSS_USERS}) public void addProviderRequestChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.location.provider.ProviderRequest.ChangedListener);
439    method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void flushGnssBatch();
440    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void getCurrentLocation(@NonNull android.location.LocationRequest, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.location.Location>);
441    method @Nullable public String getExtraLocationControllerPackage();
442    method @Deprecated public int getGnssBatchSize();
443    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public android.location.Location getLastKnownLocation(@NonNull String, @NonNull android.location.LastLocationRequest);
444    method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public void injectGnssMeasurementCorrections(@NonNull android.location.GnssMeasurementCorrections);
445    method public boolean isAdasGnssLocationEnabled();
446    method public boolean isExtraLocationControllerPackageEnabled();
447    method public boolean isLocationEnabledForUser(@NonNull android.os.UserHandle);
448    method public boolean isProviderEnabledForUser(@NonNull String, @NonNull android.os.UserHandle);
449    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public boolean isProviderPackage(@NonNull String);
450    method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public boolean isProviderPackage(@Nullable String, @NonNull String, @Nullable String);
451    method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.UPDATE_APP_OPS_STATS}) public boolean registerGnssBatchedLocationCallback(long, boolean, @NonNull android.location.BatchedLocationCallback, @Nullable android.os.Handler);
452    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssMeasurementsCallback(@NonNull android.location.GnssRequest, @NonNull java.util.concurrent.Executor, @NonNull android.location.GnssMeasurementsEvent.Callback);
453    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void removeProviderRequestChangedListener(@NonNull android.location.provider.ProviderRequest.ChangedListener);
454    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@Nullable android.location.LocationRequest, @NonNull android.location.LocationListener, @Nullable android.os.Looper);
455    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@Nullable android.location.LocationRequest, @NonNull java.util.concurrent.Executor, @NonNull android.location.LocationListener);
456    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@Nullable android.location.LocationRequest, @NonNull android.app.PendingIntent);
457    method @RequiresPermission(android.Manifest.permission.LOCATION_BYPASS) public void setAdasGnssLocationEnabled(boolean);
458    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void setExtraLocationControllerPackage(@Nullable String);
459    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void setExtraLocationControllerPackageEnabled(boolean);
460    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void setLocationEnabledForUser(boolean, @NonNull android.os.UserHandle);
461    method @Deprecated @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean setProviderEnabledForUser(@NonNull String, boolean, @NonNull android.os.UserHandle);
462    method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public boolean unregisterGnssBatchedLocationCallback(@NonNull android.location.BatchedLocationCallback);
463    field public static final String ACTION_ADAS_GNSS_ENABLED_CHANGED = "android.location.action.ADAS_GNSS_ENABLED_CHANGED";
464    field public static final String EXTRA_ADAS_GNSS_ENABLED = "android.location.extra.ADAS_GNSS_ENABLED";
465    field @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public static final String GPS_HARDWARE_PROVIDER = "gps_hardware";
466  }
467
468  public final class LocationRequest implements android.os.Parcelable {
469    method @Deprecated @NonNull public static android.location.LocationRequest create();
470    method @Deprecated @NonNull public static android.location.LocationRequest createFromDeprecatedCriteria(@NonNull android.location.Criteria, long, float, boolean);
471    method @Deprecated @NonNull public static android.location.LocationRequest createFromDeprecatedProvider(@NonNull String, long, float, boolean);
472    method @Deprecated public long getExpireAt();
473    method @Deprecated public long getExpireIn();
474    method @Deprecated public long getFastestInterval();
475    method @Deprecated public boolean getHideFromAppOps();
476    method @Deprecated public long getInterval();
477    method @Deprecated public int getNumUpdates();
478    method @Deprecated @NonNull public String getProvider();
479    method @Deprecated public float getSmallestDisplacement();
480    method @NonNull public android.os.WorkSource getWorkSource();
481    method public boolean isAdasGnssBypass();
482    method public boolean isHiddenFromAppOps();
483    method public boolean isLocationSettingsIgnored();
484    method public boolean isLowPower();
485    method @Deprecated public boolean isLowPowerMode();
486    method @Deprecated @NonNull public android.location.LocationRequest setExpireAt(long);
487    method @Deprecated @NonNull public android.location.LocationRequest setExpireIn(long);
488    method @Deprecated @NonNull public android.location.LocationRequest setFastestInterval(long);
489    method @Deprecated public void setHideFromAppOps(boolean);
490    method @Deprecated @NonNull public android.location.LocationRequest setInterval(long);
491    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_BYPASS) public android.location.LocationRequest setLocationSettingsIgnored(boolean);
492    method @Deprecated @NonNull public android.location.LocationRequest setLowPowerMode(boolean);
493    method @Deprecated @NonNull public android.location.LocationRequest setNumUpdates(int);
494    method @Deprecated @NonNull public android.location.LocationRequest setProvider(@NonNull String);
495    method @Deprecated @NonNull public android.location.LocationRequest setQuality(int);
496    method @Deprecated @NonNull public android.location.LocationRequest setSmallestDisplacement(float);
497    method @Deprecated public void setWorkSource(@Nullable android.os.WorkSource);
498    field @Deprecated public static final int ACCURACY_BLOCK = 102; // 0x66
499    field @Deprecated public static final int ACCURACY_CITY = 104; // 0x68
500    field @Deprecated public static final int ACCURACY_FINE = 100; // 0x64
501    field @Deprecated public static final int POWER_HIGH = 203; // 0xcb
502    field @Deprecated public static final int POWER_LOW = 201; // 0xc9
503    field @Deprecated public static final int POWER_NONE = 200; // 0xc8
504  }
505
506  public static final class LocationRequest.Builder {
507    method @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_BYPASS) public android.location.LocationRequest.Builder setAdasGnssBypass(boolean);
508    method @NonNull @RequiresPermission(android.Manifest.permission.UPDATE_APP_OPS_STATS) public android.location.LocationRequest.Builder setHiddenFromAppOps(boolean);
509    method @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_BYPASS) public android.location.LocationRequest.Builder setLocationSettingsIgnored(boolean);
510    method @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public android.location.LocationRequest.Builder setLowPower(boolean);
511    method @NonNull @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public android.location.LocationRequest.Builder setWorkSource(@Nullable android.os.WorkSource);
512  }
513
514  public final class SatellitePvt implements android.os.Parcelable {
515    method public int describeContents();
516    method @Nullable public android.location.SatellitePvt.ClockInfo getClockInfo();
517    method public int getEphemerisSource();
518    method @FloatRange public double getIonoDelayMeters();
519    method @IntRange(from=0, to=1023) public int getIssueOfDataClock();
520    method @IntRange(from=0, to=1023) public int getIssueOfDataEphemeris();
521    method @Nullable public android.location.SatellitePvt.PositionEcef getPositionEcef();
522    method @IntRange(from=0) public long getTimeOfClockSeconds();
523    method @IntRange(from=0) public long getTimeOfEphemerisSeconds();
524    method @FloatRange public double getTropoDelayMeters();
525    method @Nullable public android.location.SatellitePvt.VelocityEcef getVelocityEcef();
526    method public boolean hasIono();
527    method public boolean hasIssueOfDataClock();
528    method public boolean hasIssueOfDataEphemeris();
529    method public boolean hasPositionVelocityClockInfo();
530    method public boolean hasTimeOfClockSeconds();
531    method public boolean hasTimeOfEphemerisSeconds();
532    method public boolean hasTropo();
533    method public void writeToParcel(@NonNull android.os.Parcel, int);
534    field @NonNull public static final android.os.Parcelable.Creator<android.location.SatellitePvt> CREATOR;
535    field public static final int EPHEMERIS_SOURCE_DEMODULATED = 0; // 0x0
536    field public static final int EPHEMERIS_SOURCE_OTHER = 3; // 0x3
537    field public static final int EPHEMERIS_SOURCE_SERVER_LONG_TERM = 2; // 0x2
538    field public static final int EPHEMERIS_SOURCE_SERVER_NORMAL = 1; // 0x1
539  }
540
541  public static final class SatellitePvt.Builder {
542    ctor public SatellitePvt.Builder();
543    method @NonNull public android.location.SatellitePvt build();
544    method @NonNull public android.location.SatellitePvt.Builder setClockInfo(@NonNull android.location.SatellitePvt.ClockInfo);
545    method @NonNull public android.location.SatellitePvt.Builder setEphemerisSource(int);
546    method @NonNull public android.location.SatellitePvt.Builder setIonoDelayMeters(@FloatRange(from=0.0f, to=100.0f) double);
547    method @NonNull public android.location.SatellitePvt.Builder setIssueOfDataClock(@IntRange(from=0, to=1023) int);
548    method @NonNull public android.location.SatellitePvt.Builder setIssueOfDataEphemeris(@IntRange(from=0, to=1023) int);
549    method @NonNull public android.location.SatellitePvt.Builder setPositionEcef(@NonNull android.location.SatellitePvt.PositionEcef);
550    method @NonNull public android.location.SatellitePvt.Builder setTimeOfClockSeconds(@IntRange(from=0) long);
551    method @NonNull public android.location.SatellitePvt.Builder setTimeOfEphemerisSeconds(@IntRange(from=0) long);
552    method @NonNull public android.location.SatellitePvt.Builder setTropoDelayMeters(@FloatRange(from=0.0f, to=100.0f) double);
553    method @NonNull public android.location.SatellitePvt.Builder setVelocityEcef(@NonNull android.location.SatellitePvt.VelocityEcef);
554  }
555
556  public static final class SatellitePvt.ClockInfo implements android.os.Parcelable {
557    ctor public SatellitePvt.ClockInfo(double, double, double);
558    method public int describeContents();
559    method @FloatRange public double getClockDriftMetersPerSecond();
560    method @FloatRange public double getHardwareCodeBiasMeters();
561    method @FloatRange public double getTimeCorrectionMeters();
562    method public void writeToParcel(@NonNull android.os.Parcel, int);
563    field @NonNull public static final android.os.Parcelable.Creator<android.location.SatellitePvt.ClockInfo> CREATOR;
564  }
565
566  public static final class SatellitePvt.PositionEcef implements android.os.Parcelable {
567    ctor public SatellitePvt.PositionEcef(double, double, double, double);
568    method public int describeContents();
569    method @FloatRange(from=0.0f, fromInclusive=false) public double getUreMeters();
570    method @FloatRange public double getXMeters();
571    method @FloatRange public double getYMeters();
572    method @FloatRange public double getZMeters();
573    method public void writeToParcel(@NonNull android.os.Parcel, int);
574    field @NonNull public static final android.os.Parcelable.Creator<android.location.SatellitePvt.PositionEcef> CREATOR;
575  }
576
577  public static final class SatellitePvt.VelocityEcef implements android.os.Parcelable {
578    ctor public SatellitePvt.VelocityEcef(double, double, double, double);
579    method public int describeContents();
580    method @FloatRange(from=0.0f, fromInclusive=false) public double getUreRateMetersPerSecond();
581    method @FloatRange public double getXMetersPerSecond();
582    method @FloatRange public double getYMetersPerSecond();
583    method @FloatRange public double getZMetersPerSecond();
584    method public void writeToParcel(@NonNull android.os.Parcel, int);
585    field @NonNull public static final android.os.Parcelable.Creator<android.location.SatellitePvt.VelocityEcef> CREATOR;
586  }
587
588}
589
590package android.location.provider {
591
592  public abstract class LocationProviderBase {
593    ctor public LocationProviderBase(@NonNull android.content.Context, @NonNull String, @NonNull android.location.provider.ProviderProperties);
594    method @Nullable public final android.os.IBinder getBinder();
595    method @NonNull public android.location.provider.ProviderProperties getProperties();
596    method public boolean isAllowed();
597    method public abstract void onFlush(@NonNull android.location.provider.LocationProviderBase.OnFlushCompleteCallback);
598    method public abstract void onSendExtraCommand(@NonNull String, @Nullable android.os.Bundle);
599    method public abstract void onSetRequest(@NonNull android.location.provider.ProviderRequest);
600    method public void reportLocation(@NonNull android.location.Location);
601    method public void reportLocations(@NonNull java.util.List<android.location.Location>);
602    method public void setAllowed(boolean);
603    method public void setProperties(@NonNull android.location.provider.ProviderProperties);
604    field public static final String ACTION_FUSED_PROVIDER = "com.android.location.service.FusedLocationProvider";
605    field public static final String ACTION_GNSS_PROVIDER = "android.location.provider.action.GNSS_PROVIDER";
606    field public static final String ACTION_NETWORK_PROVIDER = "com.android.location.service.v3.NetworkLocationProvider";
607  }
608
609  public static interface LocationProviderBase.OnFlushCompleteCallback {
610    method public void onFlushComplete();
611  }
612
613  public final class ProviderRequest implements android.os.Parcelable {
614    method public int describeContents();
615    method @IntRange(from=0) public long getIntervalMillis();
616    method @IntRange(from=0) public long getMaxUpdateDelayMillis();
617    method public int getQuality();
618    method @NonNull public android.os.WorkSource getWorkSource();
619    method public boolean isActive();
620    method public boolean isLocationSettingsIgnored();
621    method public boolean isLowPower();
622    method public void writeToParcel(@NonNull android.os.Parcel, int);
623    field @NonNull public static final android.os.Parcelable.Creator<android.location.provider.ProviderRequest> CREATOR;
624    field @NonNull public static final android.location.provider.ProviderRequest EMPTY_REQUEST;
625    field public static final long INTERVAL_DISABLED = 9223372036854775807L; // 0x7fffffffffffffffL
626  }
627
628  public static final class ProviderRequest.Builder {
629    ctor public ProviderRequest.Builder();
630    method @NonNull public android.location.provider.ProviderRequest build();
631    method @NonNull public android.location.provider.ProviderRequest.Builder setIntervalMillis(@IntRange(from=0) long);
632    method @NonNull public android.location.provider.ProviderRequest.Builder setLocationSettingsIgnored(boolean);
633    method @NonNull public android.location.provider.ProviderRequest.Builder setLowPower(boolean);
634    method @NonNull public android.location.provider.ProviderRequest.Builder setMaxUpdateDelayMillis(@IntRange(from=0) long);
635    method @NonNull public android.location.provider.ProviderRequest.Builder setQuality(int);
636    method @NonNull public android.location.provider.ProviderRequest.Builder setWorkSource(@NonNull android.os.WorkSource);
637  }
638
639  public static interface ProviderRequest.ChangedListener {
640    method public void onProviderRequestChanged(@NonNull String, @NonNull android.location.provider.ProviderRequest);
641  }
642
643}
644