xref: /aosp_15_r20/prebuilts/sdk/35/public/api/framework-location.txt (revision 344a7f5ef16c479e7a7f54ee6567a9d112f9e72b)
1// Signature format: 2.0
2package android.location {
3
4  public class Address implements android.os.Parcelable {
5    ctor public Address(java.util.Locale);
6    method public void clearLatitude();
7    method public void clearLongitude();
8    method public int describeContents();
9    method public String getAddressLine(int);
10    method public String getAdminArea();
11    method public String getCountryCode();
12    method public String getCountryName();
13    method public android.os.Bundle getExtras();
14    method public String getFeatureName();
15    method public double getLatitude();
16    method public java.util.Locale getLocale();
17    method public String getLocality();
18    method public double getLongitude();
19    method public int getMaxAddressLineIndex();
20    method public String getPhone();
21    method public String getPostalCode();
22    method public String getPremises();
23    method public String getSubAdminArea();
24    method public String getSubLocality();
25    method public String getSubThoroughfare();
26    method public String getThoroughfare();
27    method public String getUrl();
28    method public boolean hasLatitude();
29    method public boolean hasLongitude();
30    method public void setAddressLine(int, String);
31    method public void setAdminArea(String);
32    method public void setCountryCode(String);
33    method public void setCountryName(String);
34    method public void setExtras(android.os.Bundle);
35    method public void setFeatureName(String);
36    method public void setLatitude(double);
37    method public void setLocality(String);
38    method public void setLongitude(double);
39    method public void setPhone(String);
40    method public void setPostalCode(String);
41    method public void setPremises(String);
42    method public void setSubAdminArea(String);
43    method public void setSubLocality(String);
44    method public void setSubThoroughfare(String);
45    method public void setThoroughfare(String);
46    method public void setUrl(String);
47    method public void writeToParcel(android.os.Parcel, int);
48    field @NonNull public static final android.os.Parcelable.Creator<android.location.Address> CREATOR;
49  }
50
51  @Deprecated public class Criteria implements android.os.Parcelable {
52    ctor @Deprecated public Criteria();
53    ctor @Deprecated public Criteria(android.location.Criteria);
54    method @Deprecated public int describeContents();
55    method @Deprecated public int getAccuracy();
56    method @Deprecated public int getBearingAccuracy();
57    method @Deprecated public int getHorizontalAccuracy();
58    method @Deprecated public int getPowerRequirement();
59    method @Deprecated public int getSpeedAccuracy();
60    method @Deprecated public int getVerticalAccuracy();
61    method @Deprecated public boolean isAltitudeRequired();
62    method @Deprecated public boolean isBearingRequired();
63    method @Deprecated public boolean isCostAllowed();
64    method @Deprecated public boolean isSpeedRequired();
65    method @Deprecated public void setAccuracy(int);
66    method @Deprecated public void setAltitudeRequired(boolean);
67    method @Deprecated public void setBearingAccuracy(int);
68    method @Deprecated public void setBearingRequired(boolean);
69    method @Deprecated public void setCostAllowed(boolean);
70    method @Deprecated public void setHorizontalAccuracy(int);
71    method @Deprecated public void setPowerRequirement(int);
72    method @Deprecated public void setSpeedAccuracy(int);
73    method @Deprecated public void setSpeedRequired(boolean);
74    method @Deprecated public void setVerticalAccuracy(int);
75    method @Deprecated public void writeToParcel(android.os.Parcel, int);
76    field @Deprecated public static final int ACCURACY_COARSE = 2; // 0x2
77    field @Deprecated public static final int ACCURACY_FINE = 1; // 0x1
78    field @Deprecated public static final int ACCURACY_HIGH = 3; // 0x3
79    field @Deprecated public static final int ACCURACY_LOW = 1; // 0x1
80    field @Deprecated public static final int ACCURACY_MEDIUM = 2; // 0x2
81    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.location.Criteria> CREATOR;
82    field @Deprecated public static final int NO_REQUIREMENT = 0; // 0x0
83    field @Deprecated public static final int POWER_HIGH = 3; // 0x3
84    field @Deprecated public static final int POWER_LOW = 1; // 0x1
85    field @Deprecated public static final int POWER_MEDIUM = 2; // 0x2
86  }
87
88  public final class Geocoder {
89    ctor public Geocoder(@NonNull android.content.Context);
90    ctor public Geocoder(@NonNull android.content.Context, @NonNull java.util.Locale);
91    method @Deprecated @Nullable public java.util.List<android.location.Address> getFromLocation(@FloatRange(from=-90.0, to=90.0) double, @FloatRange(from=-180.0, to=180.0) double, @IntRange(from=1) int) throws java.io.IOException;
92    method public void getFromLocation(@FloatRange(from=-90.0, to=90.0) double, @FloatRange(from=-180.0, to=180.0) double, @IntRange(from=1) int, @NonNull android.location.Geocoder.GeocodeListener);
93    method @Deprecated @Nullable public java.util.List<android.location.Address> getFromLocationName(@NonNull String, @IntRange(from=1) int) throws java.io.IOException;
94    method public void getFromLocationName(@NonNull String, @IntRange(from=1) int, @NonNull android.location.Geocoder.GeocodeListener);
95    method @Deprecated @Nullable public java.util.List<android.location.Address> getFromLocationName(@NonNull String, @IntRange(from=1) int, @FloatRange(from=-90.0, to=90.0) double, @FloatRange(from=-180.0, to=180.0) double, @FloatRange(from=-90.0, to=90.0) double, @FloatRange(from=-180.0, to=180.0) double) throws java.io.IOException;
96    method public void getFromLocationName(@NonNull String, @IntRange(from=1) int, @FloatRange(from=-90.0, to=90.0) double, @FloatRange(from=-180.0, to=180.0) double, @FloatRange(from=-90.0, to=90.0) double, @FloatRange(from=-180.0, to=180.0) double, @NonNull android.location.Geocoder.GeocodeListener);
97    method public static boolean isPresent();
98  }
99
100  public static interface Geocoder.GeocodeListener {
101    method public default void onError(@Nullable String);
102    method public void onGeocode(@NonNull java.util.List<android.location.Address>);
103  }
104
105  public final class GnssAntennaInfo implements android.os.Parcelable {
106    method public int describeContents();
107    method @FloatRange(from=0.0f) public double getCarrierFrequencyMHz();
108    method @NonNull public android.location.GnssAntennaInfo.PhaseCenterOffset getPhaseCenterOffset();
109    method @Nullable public android.location.GnssAntennaInfo.SphericalCorrections getPhaseCenterVariationCorrections();
110    method @Nullable public android.location.GnssAntennaInfo.SphericalCorrections getSignalGainCorrections();
111    method public void writeToParcel(@NonNull android.os.Parcel, int);
112    field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssAntennaInfo> CREATOR;
113  }
114
115  public static class GnssAntennaInfo.Builder {
116    ctor @Deprecated public GnssAntennaInfo.Builder();
117    ctor public GnssAntennaInfo.Builder(double, @NonNull android.location.GnssAntennaInfo.PhaseCenterOffset);
118    ctor public GnssAntennaInfo.Builder(@NonNull android.location.GnssAntennaInfo);
119    method @NonNull public android.location.GnssAntennaInfo build();
120    method @NonNull public android.location.GnssAntennaInfo.Builder setCarrierFrequencyMHz(@FloatRange(from=0.0f) double);
121    method @NonNull public android.location.GnssAntennaInfo.Builder setPhaseCenterOffset(@NonNull android.location.GnssAntennaInfo.PhaseCenterOffset);
122    method @NonNull public android.location.GnssAntennaInfo.Builder setPhaseCenterVariationCorrections(@Nullable android.location.GnssAntennaInfo.SphericalCorrections);
123    method @NonNull public android.location.GnssAntennaInfo.Builder setSignalGainCorrections(@Nullable android.location.GnssAntennaInfo.SphericalCorrections);
124  }
125
126  public static interface GnssAntennaInfo.Listener {
127    method public void onGnssAntennaInfoReceived(@NonNull java.util.List<android.location.GnssAntennaInfo>);
128  }
129
130  public static final class GnssAntennaInfo.PhaseCenterOffset implements android.os.Parcelable {
131    ctor public GnssAntennaInfo.PhaseCenterOffset(double, double, double, double, double, double);
132    method public int describeContents();
133    method @FloatRange public double getXOffsetMm();
134    method @FloatRange public double getXOffsetUncertaintyMm();
135    method @FloatRange public double getYOffsetMm();
136    method @FloatRange public double getYOffsetUncertaintyMm();
137    method @FloatRange public double getZOffsetMm();
138    method @FloatRange public double getZOffsetUncertaintyMm();
139    method public void writeToParcel(@NonNull android.os.Parcel, int);
140    field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssAntennaInfo.PhaseCenterOffset> CREATOR;
141  }
142
143  public static final class GnssAntennaInfo.SphericalCorrections implements android.os.Parcelable {
144    ctor public GnssAntennaInfo.SphericalCorrections(@NonNull double[][], @NonNull double[][]);
145    method public int describeContents();
146    method @NonNull public double[][] getCorrectionUncertaintiesArray();
147    method @NonNull public double[][] getCorrectionsArray();
148    method @FloatRange(from=0.0f, to=180.0f) public double getDeltaPhi();
149    method @FloatRange(from=0.0f, to=360.0f) public double getDeltaTheta();
150    method public void writeToParcel(@NonNull android.os.Parcel, int);
151    field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssAntennaInfo.SphericalCorrections> CREATOR;
152  }
153
154  public final class GnssAutomaticGainControl implements android.os.Parcelable {
155    method public int describeContents();
156    method @IntRange(from=0) public long getCarrierFrequencyHz();
157    method public int getConstellationType();
158    method @FloatRange(from=0xffffd8f0, to=10000) public double getLevelDb();
159    method public void writeToParcel(@NonNull android.os.Parcel, int);
160    field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssAutomaticGainControl> CREATOR;
161  }
162
163  public static final class GnssAutomaticGainControl.Builder {
164    ctor public GnssAutomaticGainControl.Builder();
165    ctor public GnssAutomaticGainControl.Builder(@NonNull android.location.GnssAutomaticGainControl);
166    method @NonNull public android.location.GnssAutomaticGainControl build();
167    method @NonNull public android.location.GnssAutomaticGainControl.Builder setCarrierFrequencyHz(@IntRange(from=0) long);
168    method @NonNull public android.location.GnssAutomaticGainControl.Builder setConstellationType(int);
169    method @NonNull public android.location.GnssAutomaticGainControl.Builder setLevelDb(@FloatRange(from=0xffffd8f0, to=10000) double);
170  }
171
172  public final class GnssCapabilities implements android.os.Parcelable {
173    method public int describeContents();
174    method @NonNull public java.util.List<android.location.GnssSignalType> getGnssSignalTypes();
175    method public int hasAccumulatedDeltaRange();
176    method public boolean hasAntennaInfo();
177    method public boolean hasGeofencing();
178    method @Deprecated public boolean hasGnssAntennaInfo();
179    method public boolean hasLowPowerMode();
180    method public boolean hasMeasurementCorrections();
181    method public boolean hasMeasurementCorrectionsExcessPathLength();
182    method public boolean hasMeasurementCorrectionsForDriving();
183    method public boolean hasMeasurementCorrectionsLosSats();
184    method public boolean hasMeasurementCorrectionsReflectingPlane();
185    method public boolean hasMeasurementCorrelationVectors();
186    method public boolean hasMeasurements();
187    method public boolean hasMsa();
188    method public boolean hasMsb();
189    method public boolean hasNavigationMessages();
190    method public boolean hasOnDemandTime();
191    method public boolean hasPowerMultibandAcquisition();
192    method public boolean hasPowerMultibandTracking();
193    method public boolean hasPowerOtherModes();
194    method public boolean hasPowerSinglebandAcquisition();
195    method public boolean hasPowerSinglebandTracking();
196    method public boolean hasPowerTotal();
197    method public boolean hasSatelliteBlocklist();
198    method public boolean hasSatellitePvt();
199    method public boolean hasScheduling();
200    method public boolean hasSingleShotFix();
201    method public void writeToParcel(@NonNull android.os.Parcel, int);
202    field public static final int CAPABILITY_SUPPORTED = 1; // 0x1
203    field public static final int CAPABILITY_UNKNOWN = 0; // 0x0
204    field public static final int CAPABILITY_UNSUPPORTED = 2; // 0x2
205    field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssCapabilities> CREATOR;
206  }
207
208  public static final class GnssCapabilities.Builder {
209    ctor public GnssCapabilities.Builder();
210    ctor public GnssCapabilities.Builder(@NonNull android.location.GnssCapabilities);
211    method @NonNull public android.location.GnssCapabilities build();
212    method @NonNull public android.location.GnssCapabilities.Builder setGnssSignalTypes(@NonNull java.util.List<android.location.GnssSignalType>);
213    method @NonNull public android.location.GnssCapabilities.Builder setHasAccumulatedDeltaRange(int);
214    method @NonNull public android.location.GnssCapabilities.Builder setHasAntennaInfo(boolean);
215    method @NonNull public android.location.GnssCapabilities.Builder setHasGeofencing(boolean);
216    method @NonNull public android.location.GnssCapabilities.Builder setHasLowPowerMode(boolean);
217    method @NonNull public android.location.GnssCapabilities.Builder setHasMeasurementCorrections(boolean);
218    method @NonNull public android.location.GnssCapabilities.Builder setHasMeasurementCorrectionsExcessPathLength(boolean);
219    method @NonNull public android.location.GnssCapabilities.Builder setHasMeasurementCorrectionsForDriving(boolean);
220    method @NonNull public android.location.GnssCapabilities.Builder setHasMeasurementCorrectionsLosSats(boolean);
221    method @NonNull public android.location.GnssCapabilities.Builder setHasMeasurementCorrectionsReflectingPlane(boolean);
222    method @NonNull public android.location.GnssCapabilities.Builder setHasMeasurementCorrelationVectors(boolean);
223    method @NonNull public android.location.GnssCapabilities.Builder setHasMeasurements(boolean);
224    method @NonNull public android.location.GnssCapabilities.Builder setHasMsa(boolean);
225    method @NonNull public android.location.GnssCapabilities.Builder setHasMsb(boolean);
226    method @NonNull public android.location.GnssCapabilities.Builder setHasNavigationMessages(boolean);
227    method @NonNull public android.location.GnssCapabilities.Builder setHasOnDemandTime(boolean);
228    method @NonNull public android.location.GnssCapabilities.Builder setHasPowerMultibandAcquisition(boolean);
229    method @NonNull public android.location.GnssCapabilities.Builder setHasPowerMultibandTracking(boolean);
230    method @NonNull public android.location.GnssCapabilities.Builder setHasPowerOtherModes(boolean);
231    method @NonNull public android.location.GnssCapabilities.Builder setHasPowerSinglebandAcquisition(boolean);
232    method @NonNull public android.location.GnssCapabilities.Builder setHasPowerSinglebandTracking(boolean);
233    method @NonNull public android.location.GnssCapabilities.Builder setHasPowerTotal(boolean);
234    method @NonNull public android.location.GnssCapabilities.Builder setHasSatelliteBlocklist(boolean);
235    method @NonNull public android.location.GnssCapabilities.Builder setHasSatellitePvt(boolean);
236    method @NonNull public android.location.GnssCapabilities.Builder setHasScheduling(boolean);
237    method @NonNull public android.location.GnssCapabilities.Builder setHasSingleShotFix(boolean);
238  }
239
240  public final class GnssClock implements android.os.Parcelable {
241    method public int describeContents();
242    method public double getBiasNanos();
243    method @FloatRange(from=0.0f) public double getBiasUncertaintyNanos();
244    method public double getDriftNanosPerSecond();
245    method @FloatRange(from=0.0f) public double getDriftUncertaintyNanosPerSecond();
246    method public long getElapsedRealtimeNanos();
247    method @FloatRange(from=0.0f) public double getElapsedRealtimeUncertaintyNanos();
248    method public long getFullBiasNanos();
249    method public int getHardwareClockDiscontinuityCount();
250    method public int getLeapSecond();
251    method @FloatRange(from=0.0) public double getReferenceCarrierFrequencyHzForIsb();
252    method @NonNull public String getReferenceCodeTypeForIsb();
253    method public int getReferenceConstellationTypeForIsb();
254    method public long getTimeNanos();
255    method @FloatRange(from=0.0f) public double getTimeUncertaintyNanos();
256    method public boolean hasBiasNanos();
257    method public boolean hasBiasUncertaintyNanos();
258    method public boolean hasDriftNanosPerSecond();
259    method public boolean hasDriftUncertaintyNanosPerSecond();
260    method public boolean hasElapsedRealtimeNanos();
261    method public boolean hasElapsedRealtimeUncertaintyNanos();
262    method public boolean hasFullBiasNanos();
263    method public boolean hasLeapSecond();
264    method public boolean hasReferenceCarrierFrequencyHzForIsb();
265    method public boolean hasReferenceCodeTypeForIsb();
266    method public boolean hasReferenceConstellationTypeForIsb();
267    method public boolean hasTimeUncertaintyNanos();
268    method public void writeToParcel(android.os.Parcel, int);
269    field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssClock> CREATOR;
270  }
271
272  public final class GnssMeasurement implements android.os.Parcelable {
273    method public int describeContents();
274    method public double getAccumulatedDeltaRangeMeters();
275    method public int getAccumulatedDeltaRangeState();
276    method public double getAccumulatedDeltaRangeUncertaintyMeters();
277    method @Deprecated public double getAutomaticGainControlLevelDb();
278    method @FloatRange(from=0, to=63) public double getBasebandCn0DbHz();
279    method @Deprecated public long getCarrierCycles();
280    method public float getCarrierFrequencyHz();
281    method @Deprecated public double getCarrierPhase();
282    method @Deprecated public double getCarrierPhaseUncertainty();
283    method @FloatRange(from=0, to=63) public double getCn0DbHz();
284    method @NonNull public String getCodeType();
285    method public int getConstellationType();
286    method public double getFullInterSignalBiasNanos();
287    method @FloatRange(from=0.0) public double getFullInterSignalBiasUncertaintyNanos();
288    method public int getMultipathIndicator();
289    method public double getPseudorangeRateMetersPerSecond();
290    method public double getPseudorangeRateUncertaintyMetersPerSecond();
291    method public long getReceivedSvTimeNanos();
292    method public long getReceivedSvTimeUncertaintyNanos();
293    method public double getSatelliteInterSignalBiasNanos();
294    method @FloatRange(from=0.0) public double getSatelliteInterSignalBiasUncertaintyNanos();
295    method public double getSnrInDb();
296    method public int getState();
297    method public int getSvid();
298    method public double getTimeOffsetNanos();
299    method @Deprecated public boolean hasAutomaticGainControlLevelDb();
300    method public boolean hasBasebandCn0DbHz();
301    method @Deprecated public boolean hasCarrierCycles();
302    method public boolean hasCarrierFrequencyHz();
303    method @Deprecated public boolean hasCarrierPhase();
304    method @Deprecated public boolean hasCarrierPhaseUncertainty();
305    method public boolean hasCodeType();
306    method public boolean hasFullInterSignalBiasNanos();
307    method public boolean hasFullInterSignalBiasUncertaintyNanos();
308    method public boolean hasSatelliteInterSignalBiasNanos();
309    method public boolean hasSatelliteInterSignalBiasUncertaintyNanos();
310    method public boolean hasSnrInDb();
311    method public void writeToParcel(android.os.Parcel, int);
312    field public static final int ADR_STATE_CYCLE_SLIP = 4; // 0x4
313    field public static final int ADR_STATE_HALF_CYCLE_REPORTED = 16; // 0x10
314    field public static final int ADR_STATE_HALF_CYCLE_RESOLVED = 8; // 0x8
315    field public static final int ADR_STATE_RESET = 2; // 0x2
316    field public static final int ADR_STATE_UNKNOWN = 0; // 0x0
317    field public static final int ADR_STATE_VALID = 1; // 0x1
318    field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssMeasurement> CREATOR;
319    field public static final int MULTIPATH_INDICATOR_DETECTED = 1; // 0x1
320    field public static final int MULTIPATH_INDICATOR_NOT_DETECTED = 2; // 0x2
321    field public static final int MULTIPATH_INDICATOR_UNKNOWN = 0; // 0x0
322    field public static final int STATE_2ND_CODE_LOCK = 65536; // 0x10000
323    field public static final int STATE_BDS_D2_BIT_SYNC = 256; // 0x100
324    field public static final int STATE_BDS_D2_SUBFRAME_SYNC = 512; // 0x200
325    field public static final int STATE_BIT_SYNC = 2; // 0x2
326    field public static final int STATE_CODE_LOCK = 1; // 0x1
327    field public static final int STATE_GAL_E1BC_CODE_LOCK = 1024; // 0x400
328    field public static final int STATE_GAL_E1B_PAGE_SYNC = 4096; // 0x1000
329    field public static final int STATE_GAL_E1C_2ND_CODE_LOCK = 2048; // 0x800
330    field public static final int STATE_GLO_STRING_SYNC = 64; // 0x40
331    field public static final int STATE_GLO_TOD_DECODED = 128; // 0x80
332    field public static final int STATE_GLO_TOD_KNOWN = 32768; // 0x8000
333    field public static final int STATE_MSEC_AMBIGUOUS = 16; // 0x10
334    field public static final int STATE_SBAS_SYNC = 8192; // 0x2000
335    field public static final int STATE_SUBFRAME_SYNC = 4; // 0x4
336    field public static final int STATE_SYMBOL_SYNC = 32; // 0x20
337    field public static final int STATE_TOW_DECODED = 8; // 0x8
338    field public static final int STATE_TOW_KNOWN = 16384; // 0x4000
339    field public static final int STATE_UNKNOWN = 0; // 0x0
340  }
341
342  public final class GnssMeasurementRequest implements android.os.Parcelable {
343    method public int describeContents();
344    method @IntRange(from=0) public int getIntervalMillis();
345    method public boolean isFullTracking();
346    method public void writeToParcel(@NonNull android.os.Parcel, int);
347    field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssMeasurementRequest> CREATOR;
348    field public static final int PASSIVE_INTERVAL = 2147483647; // 0x7fffffff
349  }
350
351  public static final class GnssMeasurementRequest.Builder {
352    ctor public GnssMeasurementRequest.Builder();
353    ctor public GnssMeasurementRequest.Builder(@NonNull android.location.GnssMeasurementRequest);
354    method @NonNull public android.location.GnssMeasurementRequest build();
355    method @NonNull public android.location.GnssMeasurementRequest.Builder setFullTracking(boolean);
356    method @NonNull public android.location.GnssMeasurementRequest.Builder setIntervalMillis(@IntRange(from=0) int);
357  }
358
359  public final class GnssMeasurementsEvent implements android.os.Parcelable {
360    method public int describeContents();
361    method @NonNull public android.location.GnssClock getClock();
362    method @NonNull public java.util.Collection<android.location.GnssAutomaticGainControl> getGnssAutomaticGainControls();
363    method @NonNull public java.util.Collection<android.location.GnssMeasurement> getMeasurements();
364    method public boolean hasIsFullTracking();
365    method public boolean isFullTracking();
366    method public void writeToParcel(android.os.Parcel, int);
367    field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssMeasurementsEvent> CREATOR;
368  }
369
370  public static final class GnssMeasurementsEvent.Builder {
371    ctor public GnssMeasurementsEvent.Builder();
372    ctor public GnssMeasurementsEvent.Builder(@NonNull android.location.GnssMeasurementsEvent);
373    method @NonNull public android.location.GnssMeasurementsEvent build();
374    method @NonNull public android.location.GnssMeasurementsEvent.Builder clearIsFullTracking();
375    method @NonNull public android.location.GnssMeasurementsEvent.Builder setClock(@NonNull android.location.GnssClock);
376    method @NonNull public android.location.GnssMeasurementsEvent.Builder setGnssAutomaticGainControls(@NonNull java.util.Collection<android.location.GnssAutomaticGainControl>);
377    method @NonNull public android.location.GnssMeasurementsEvent.Builder setIsFullTracking(boolean);
378    method @NonNull public android.location.GnssMeasurementsEvent.Builder setMeasurements(@NonNull java.util.Collection<android.location.GnssMeasurement>);
379  }
380
381  public abstract static class GnssMeasurementsEvent.Callback {
382    ctor public GnssMeasurementsEvent.Callback();
383    method public void onGnssMeasurementsReceived(android.location.GnssMeasurementsEvent);
384    method @Deprecated public void onStatusChanged(int);
385    field @Deprecated public static final int STATUS_LOCATION_DISABLED = 2; // 0x2
386    field @Deprecated public static final int STATUS_NOT_ALLOWED = 3; // 0x3
387    field @Deprecated public static final int STATUS_NOT_SUPPORTED = 0; // 0x0
388    field @Deprecated public static final int STATUS_READY = 1; // 0x1
389  }
390
391  public final class GnssNavigationMessage implements android.os.Parcelable {
392    method public int describeContents();
393    method @NonNull public byte[] getData();
394    method @IntRange(from=0xffffffff, to=120) public int getMessageId();
395    method public int getStatus();
396    method @IntRange(from=1) public int getSubmessageId();
397    method @IntRange(from=1, to=200) public int getSvid();
398    method public int getType();
399    method public void writeToParcel(android.os.Parcel, int);
400    field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssNavigationMessage> CREATOR;
401    field public static final int STATUS_PARITY_PASSED = 1; // 0x1
402    field public static final int STATUS_PARITY_REBUILT = 2; // 0x2
403    field public static final int STATUS_UNKNOWN = 0; // 0x0
404    field public static final int TYPE_BDS_CNAV1 = 1283; // 0x503
405    field public static final int TYPE_BDS_CNAV2 = 1284; // 0x504
406    field public static final int TYPE_BDS_D1 = 1281; // 0x501
407    field public static final int TYPE_BDS_D2 = 1282; // 0x502
408    field public static final int TYPE_GAL_F = 1538; // 0x602
409    field public static final int TYPE_GAL_I = 1537; // 0x601
410    field public static final int TYPE_GLO_L1CA = 769; // 0x301
411    field public static final int TYPE_GPS_CNAV2 = 260; // 0x104
412    field public static final int TYPE_GPS_L1CA = 257; // 0x101
413    field public static final int TYPE_GPS_L2CNAV = 258; // 0x102
414    field public static final int TYPE_GPS_L5CNAV = 259; // 0x103
415    field public static final int TYPE_IRN_L1 = 1795; // 0x703
416    field public static final int TYPE_IRN_L5 = 1794; // 0x702
417    field public static final int TYPE_IRN_L5CA = 1793; // 0x701
418    field public static final int TYPE_QZS_L1CA = 1025; // 0x401
419    field public static final int TYPE_SBS = 513; // 0x201
420    field public static final int TYPE_UNKNOWN = 0; // 0x0
421  }
422
423  public abstract static class GnssNavigationMessage.Callback {
424    ctor public GnssNavigationMessage.Callback();
425    method public void onGnssNavigationMessageReceived(android.location.GnssNavigationMessage);
426    method @Deprecated public void onStatusChanged(int);
427    field @Deprecated public static final int STATUS_LOCATION_DISABLED = 2; // 0x2
428    field @Deprecated public static final int STATUS_NOT_SUPPORTED = 0; // 0x0
429    field @Deprecated public static final int STATUS_READY = 1; // 0x1
430  }
431
432  public final class GnssSignalType implements android.os.Parcelable {
433    method @NonNull public static android.location.GnssSignalType create(int, @FloatRange(from=0.0f, fromInclusive=false) double, @NonNull String);
434    method public int describeContents();
435    method @FloatRange(from=0.0f, fromInclusive=false) public double getCarrierFrequencyHz();
436    method @NonNull public String getCodeType();
437    method public int getConstellationType();
438    method public void writeToParcel(@NonNull android.os.Parcel, int);
439    field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssSignalType> CREATOR;
440  }
441
442  public final class GnssStatus implements android.os.Parcelable {
443    method public int describeContents();
444    method @FloatRange(from=0, to=360) public float getAzimuthDegrees(@IntRange(from=0) int);
445    method @FloatRange(from=0, to=63) public float getBasebandCn0DbHz(@IntRange(from=0) int);
446    method @FloatRange(from=0) public float getCarrierFrequencyHz(@IntRange(from=0) int);
447    method @FloatRange(from=0, to=63) public float getCn0DbHz(@IntRange(from=0) int);
448    method public int getConstellationType(@IntRange(from=0) int);
449    method @FloatRange(from=0xffffffa6, to=90) public float getElevationDegrees(@IntRange(from=0) int);
450    method @IntRange(from=0) public int getSatelliteCount();
451    method @IntRange(from=1, to=206) public int getSvid(@IntRange(from=0) int);
452    method public boolean hasAlmanacData(@IntRange(from=0) int);
453    method public boolean hasBasebandCn0DbHz(@IntRange(from=0) int);
454    method public boolean hasCarrierFrequencyHz(@IntRange(from=0) int);
455    method public boolean hasEphemerisData(@IntRange(from=0) int);
456    method public boolean usedInFix(@IntRange(from=0) int);
457    method public void writeToParcel(@NonNull android.os.Parcel, int);
458    field public static final int CONSTELLATION_BEIDOU = 5; // 0x5
459    field public static final int CONSTELLATION_GALILEO = 6; // 0x6
460    field public static final int CONSTELLATION_GLONASS = 3; // 0x3
461    field public static final int CONSTELLATION_GPS = 1; // 0x1
462    field public static final int CONSTELLATION_IRNSS = 7; // 0x7
463    field public static final int CONSTELLATION_QZSS = 4; // 0x4
464    field public static final int CONSTELLATION_SBAS = 2; // 0x2
465    field public static final int CONSTELLATION_UNKNOWN = 0; // 0x0
466    field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssStatus> CREATOR;
467  }
468
469  public static final class GnssStatus.Builder {
470    ctor public GnssStatus.Builder();
471    method @NonNull public android.location.GnssStatus.Builder addSatellite(int, @IntRange(from=1, to=200) int, @FloatRange(from=0, to=63) float, @FloatRange(from=0xffffffa6, to=90) float, @FloatRange(from=0, to=360) float, boolean, boolean, boolean, boolean, @FloatRange(from=0) float, boolean, @FloatRange(from=0, to=63) float);
472    method @NonNull public android.location.GnssStatus build();
473    method @NonNull public android.location.GnssStatus.Builder clearSatellites();
474  }
475
476  public abstract static class GnssStatus.Callback {
477    ctor public GnssStatus.Callback();
478    method public void onFirstFix(int);
479    method public void onSatelliteStatusChanged(@NonNull android.location.GnssStatus);
480    method public void onStarted();
481    method public void onStopped();
482  }
483
484  @Deprecated public final class GpsSatellite {
485    method @Deprecated public float getAzimuth();
486    method @Deprecated public float getElevation();
487    method @Deprecated public int getPrn();
488    method @Deprecated public float getSnr();
489    method @Deprecated public boolean hasAlmanac();
490    method @Deprecated public boolean hasEphemeris();
491    method @Deprecated public boolean usedInFix();
492  }
493
494  @Deprecated public final class GpsStatus {
495    method @Deprecated @NonNull public static android.location.GpsStatus create(@NonNull android.location.GnssStatus, int);
496    method @Deprecated public int getMaxSatellites();
497    method @Deprecated public Iterable<android.location.GpsSatellite> getSatellites();
498    method @Deprecated public int getTimeToFirstFix();
499    field @Deprecated public static final int GPS_EVENT_FIRST_FIX = 3; // 0x3
500    field @Deprecated public static final int GPS_EVENT_SATELLITE_STATUS = 4; // 0x4
501    field @Deprecated public static final int GPS_EVENT_STARTED = 1; // 0x1
502    field @Deprecated public static final int GPS_EVENT_STOPPED = 2; // 0x2
503  }
504
505  @Deprecated public static interface GpsStatus.Listener {
506    method @Deprecated public void onGpsStatusChanged(int);
507  }
508
509  @Deprecated public static interface GpsStatus.NmeaListener {
510    method @Deprecated public void onNmeaReceived(long, String);
511  }
512
513  public interface LocationListener {
514    method public default void onFlushComplete(int);
515    method public void onLocationChanged(@NonNull android.location.Location);
516    method public default void onLocationChanged(@NonNull java.util.List<android.location.Location>);
517    method public default void onProviderDisabled(@NonNull String);
518    method public default void onProviderEnabled(@NonNull String);
519    method @Deprecated public default void onStatusChanged(String, int, android.os.Bundle);
520  }
521
522  public class LocationManager {
523    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean addGpsStatusListener(android.location.GpsStatus.Listener);
524    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean addNmeaListener(@NonNull android.location.GpsStatus.NmeaListener);
525    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean addNmeaListener(@NonNull android.location.OnNmeaMessageListener);
526    method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean addNmeaListener(@NonNull android.location.OnNmeaMessageListener, @Nullable android.os.Handler);
527    method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean addNmeaListener(@NonNull java.util.concurrent.Executor, @NonNull android.location.OnNmeaMessageListener);
528    method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void addProximityAlert(double, double, float, long, @NonNull android.app.PendingIntent);
529    method public void addTestProvider(@NonNull String, boolean, boolean, boolean, boolean, boolean, boolean, boolean, int, int);
530    method public void addTestProvider(@NonNull String, @NonNull android.location.provider.ProviderProperties);
531    method public void addTestProvider(@NonNull String, @NonNull android.location.provider.ProviderProperties, @NonNull java.util.Set<java.lang.String>);
532    method @Deprecated public void clearTestProviderEnabled(@NonNull String);
533    method @Deprecated public void clearTestProviderLocation(@NonNull String);
534    method @Deprecated public void clearTestProviderStatus(@NonNull String);
535    method @NonNull public java.util.List<java.lang.String> getAllProviders();
536    method @Deprecated @Nullable public String getBestProvider(@NonNull android.location.Criteria, boolean);
537    method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void getCurrentLocation(@NonNull String, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.location.Location>);
538    method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void getCurrentLocation(@NonNull String, @NonNull android.location.LocationRequest, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.location.Location>);
539    method @Nullable public java.util.List<android.location.GnssAntennaInfo> getGnssAntennaInfos();
540    method @NonNull public android.location.GnssCapabilities getGnssCapabilities();
541    method @Nullable public String getGnssHardwareModelName();
542    method public int getGnssYearOfHardware();
543    method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public android.location.GpsStatus getGpsStatus(@Nullable android.location.GpsStatus);
544    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public android.location.Location getLastKnownLocation(@NonNull String);
545    method @Deprecated @Nullable public android.location.LocationProvider getProvider(@NonNull String);
546    method @Nullable public android.location.provider.ProviderProperties getProviderProperties(@NonNull String);
547    method @NonNull public java.util.List<java.lang.String> getProviders(boolean);
548    method @Deprecated @NonNull public java.util.List<java.lang.String> getProviders(@NonNull android.location.Criteria, boolean);
549    method public boolean hasProvider(@NonNull String);
550    method public boolean isLocationEnabled();
551    method public boolean isProviderEnabled(@NonNull String);
552    method public boolean registerAntennaInfoListener(@NonNull java.util.concurrent.Executor, @NonNull android.location.GnssAntennaInfo.Listener);
553    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssMeasurementsCallback(@NonNull android.location.GnssMeasurementsEvent.Callback);
554    method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssMeasurementsCallback(@NonNull android.location.GnssMeasurementsEvent.Callback, @Nullable android.os.Handler);
555    method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssMeasurementsCallback(@NonNull java.util.concurrent.Executor, @NonNull android.location.GnssMeasurementsEvent.Callback);
556    method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssMeasurementsCallback(@NonNull android.location.GnssMeasurementRequest, @NonNull java.util.concurrent.Executor, @NonNull android.location.GnssMeasurementsEvent.Callback);
557    method @Deprecated public boolean registerGnssNavigationMessageCallback(@NonNull android.location.GnssNavigationMessage.Callback);
558    method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssNavigationMessageCallback(@NonNull android.location.GnssNavigationMessage.Callback, @Nullable android.os.Handler);
559    method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssNavigationMessageCallback(@NonNull java.util.concurrent.Executor, @NonNull android.location.GnssNavigationMessage.Callback);
560    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssStatusCallback(@NonNull android.location.GnssStatus.Callback);
561    method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssStatusCallback(@NonNull android.location.GnssStatus.Callback, @Nullable android.os.Handler);
562    method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssStatusCallback(@NonNull java.util.concurrent.Executor, @NonNull android.location.GnssStatus.Callback);
563    method @Deprecated public void removeGpsStatusListener(android.location.GpsStatus.Listener);
564    method @Deprecated public void removeNmeaListener(@NonNull android.location.GpsStatus.NmeaListener);
565    method public void removeNmeaListener(@NonNull android.location.OnNmeaMessageListener);
566    method @RequiresPermission(anyOf={"android.permission.ACCESS_COARSE_LOCATION", "android.permission.ACCESS_FINE_LOCATION"}, apis="..22") public void removeProximityAlert(@NonNull android.app.PendingIntent);
567    method public void removeTestProvider(@NonNull String);
568    method @RequiresPermission(anyOf={"android.permission.ACCESS_COARSE_LOCATION", "android.permission.ACCESS_FINE_LOCATION"}, apis="..22") public void removeUpdates(@NonNull android.location.LocationListener);
569    method public void removeUpdates(@NonNull android.app.PendingIntent);
570    method public void requestFlush(@NonNull String, @NonNull android.location.LocationListener, int);
571    method public void requestFlush(@NonNull String, @NonNull android.app.PendingIntent, int);
572    method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@NonNull String, long, float, @NonNull android.location.LocationListener);
573    method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@NonNull String, long, float, @NonNull android.location.LocationListener, @Nullable android.os.Looper);
574    method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@NonNull String, long, float, @NonNull java.util.concurrent.Executor, @NonNull android.location.LocationListener);
575    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(long, float, @NonNull android.location.Criteria, @NonNull android.location.LocationListener, @Nullable android.os.Looper);
576    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(long, float, @NonNull android.location.Criteria, @NonNull java.util.concurrent.Executor, @NonNull android.location.LocationListener);
577    method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@NonNull String, long, float, @NonNull android.app.PendingIntent);
578    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(long, float, @NonNull android.location.Criteria, @NonNull android.app.PendingIntent);
579    method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@NonNull String, @NonNull android.location.LocationRequest, @NonNull java.util.concurrent.Executor, @NonNull android.location.LocationListener);
580    method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@NonNull String, @NonNull android.location.LocationRequest, @NonNull android.app.PendingIntent);
581    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestSingleUpdate(@NonNull String, @NonNull android.location.LocationListener, @Nullable android.os.Looper);
582    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestSingleUpdate(@NonNull android.location.Criteria, @NonNull android.location.LocationListener, @Nullable android.os.Looper);
583    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestSingleUpdate(@NonNull String, @NonNull android.app.PendingIntent);
584    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestSingleUpdate(@NonNull android.location.Criteria, @NonNull android.app.PendingIntent);
585    method public boolean sendExtraCommand(@NonNull String, @NonNull String, @Nullable android.os.Bundle);
586    method public void setTestProviderEnabled(@NonNull String, boolean);
587    method public void setTestProviderLocation(@NonNull String, @NonNull android.location.Location);
588    method @Deprecated public void setTestProviderStatus(@NonNull String, int, @Nullable android.os.Bundle, long);
589    method public void unregisterAntennaInfoListener(@NonNull android.location.GnssAntennaInfo.Listener);
590    method public void unregisterGnssMeasurementsCallback(@NonNull android.location.GnssMeasurementsEvent.Callback);
591    method public void unregisterGnssNavigationMessageCallback(@NonNull android.location.GnssNavigationMessage.Callback);
592    method public void unregisterGnssStatusCallback(@NonNull android.location.GnssStatus.Callback);
593    field public static final String ACTION_GNSS_CAPABILITIES_CHANGED = "android.location.action.GNSS_CAPABILITIES_CHANGED";
594    field public static final String EXTRA_GNSS_CAPABILITIES = "android.location.extra.GNSS_CAPABILITIES";
595    field public static final String EXTRA_LOCATION_ENABLED = "android.location.extra.LOCATION_ENABLED";
596    field public static final String EXTRA_PROVIDER_ENABLED = "android.location.extra.PROVIDER_ENABLED";
597    field public static final String EXTRA_PROVIDER_NAME = "android.location.extra.PROVIDER_NAME";
598    field public static final String FUSED_PROVIDER = "fused";
599    field public static final String GPS_PROVIDER = "gps";
600    field public static final String KEY_FLUSH_COMPLETE = "flushComplete";
601    field public static final String KEY_LOCATIONS = "locations";
602    field public static final String KEY_LOCATION_CHANGED = "location";
603    field public static final String KEY_PROVIDER_ENABLED = "providerEnabled";
604    field public static final String KEY_PROXIMITY_ENTERING = "entering";
605    field @Deprecated public static final String KEY_STATUS_CHANGED = "status";
606    field public static final String MODE_CHANGED_ACTION = "android.location.MODE_CHANGED";
607    field public static final String NETWORK_PROVIDER = "network";
608    field public static final String PASSIVE_PROVIDER = "passive";
609    field public static final String PROVIDERS_CHANGED_ACTION = "android.location.PROVIDERS_CHANGED";
610  }
611
612  @Deprecated public class LocationProvider {
613    method @Deprecated public int getAccuracy();
614    method @Deprecated public String getName();
615    method @Deprecated public int getPowerRequirement();
616    method @Deprecated public boolean hasMonetaryCost();
617    method @Deprecated public boolean meetsCriteria(android.location.Criteria);
618    method @Deprecated public boolean requiresCell();
619    method @Deprecated public boolean requiresNetwork();
620    method @Deprecated public boolean requiresSatellite();
621    method @Deprecated public boolean supportsAltitude();
622    method @Deprecated public boolean supportsBearing();
623    method @Deprecated public boolean supportsSpeed();
624    field @Deprecated public static final int AVAILABLE = 2; // 0x2
625    field @Deprecated public static final int OUT_OF_SERVICE = 0; // 0x0
626    field @Deprecated public static final int TEMPORARILY_UNAVAILABLE = 1; // 0x1
627  }
628
629  public final class LocationRequest implements android.os.Parcelable {
630    method public int describeContents();
631    method @IntRange(from=1) public long getDurationMillis();
632    method @IntRange(from=0) public long getIntervalMillis();
633    method @IntRange(from=0) public long getMaxUpdateDelayMillis();
634    method @IntRange(from=1, to=java.lang.Integer.MAX_VALUE) public int getMaxUpdates();
635    method @FloatRange(from=0, to=java.lang.Float.MAX_VALUE) public float getMinUpdateDistanceMeters();
636    method @IntRange(from=0) public long getMinUpdateIntervalMillis();
637    method public int getQuality();
638    method public void writeToParcel(@NonNull android.os.Parcel, int);
639    field @NonNull public static final android.os.Parcelable.Creator<android.location.LocationRequest> CREATOR;
640    field public static final long PASSIVE_INTERVAL = 9223372036854775807L; // 0x7fffffffffffffffL
641    field public static final int QUALITY_BALANCED_POWER_ACCURACY = 102; // 0x66
642    field public static final int QUALITY_HIGH_ACCURACY = 100; // 0x64
643    field public static final int QUALITY_LOW_POWER = 104; // 0x68
644  }
645
646  public static final class LocationRequest.Builder {
647    ctor public LocationRequest.Builder(long);
648    ctor public LocationRequest.Builder(@NonNull android.location.LocationRequest);
649    method @NonNull public android.location.LocationRequest build();
650    method @NonNull public android.location.LocationRequest.Builder clearMinUpdateIntervalMillis();
651    method @NonNull public android.location.LocationRequest.Builder setDurationMillis(@IntRange(from=1) long);
652    method @NonNull public android.location.LocationRequest.Builder setIntervalMillis(@IntRange(from=0) long);
653    method @NonNull public android.location.LocationRequest.Builder setMaxUpdateDelayMillis(@IntRange(from=0) long);
654    method @NonNull public android.location.LocationRequest.Builder setMaxUpdates(@IntRange(from=1, to=java.lang.Integer.MAX_VALUE) int);
655    method @NonNull public android.location.LocationRequest.Builder setMinUpdateDistanceMeters(@FloatRange(from=0, to=java.lang.Float.MAX_VALUE) float);
656    method @NonNull public android.location.LocationRequest.Builder setMinUpdateIntervalMillis(@IntRange(from=0) long);
657    method @NonNull public android.location.LocationRequest.Builder setQuality(int);
658  }
659
660  public interface OnNmeaMessageListener {
661    method public void onNmeaMessage(String, long);
662  }
663
664  public abstract class SettingInjectorService extends android.app.Service {
665    ctor public SettingInjectorService(String);
666    method public final android.os.IBinder onBind(android.content.Intent);
667    method protected abstract boolean onGetEnabled();
668    method protected abstract String onGetSummary();
669    method public final void onStart(android.content.Intent, int);
670    method public final int onStartCommand(android.content.Intent, int, int);
671    method public static final void refreshSettings(@NonNull android.content.Context);
672    field public static final String ACTION_INJECTED_SETTING_CHANGED = "android.location.InjectedSettingChanged";
673    field public static final String ACTION_SERVICE_INTENT = "android.location.SettingInjectorService";
674    field public static final String ATTRIBUTES_NAME = "injected-location-setting";
675    field public static final String META_DATA_NAME = "android.location.SettingInjectorService";
676  }
677
678}
679
680package android.location.altitude {
681
682  public final class AltitudeConverter {
683    ctor public AltitudeConverter();
684    method @WorkerThread public void addMslAltitudeToLocation(@NonNull android.content.Context, @NonNull android.location.Location) throws java.io.IOException;
685    method public boolean tryAddMslAltitudeToLocation(@NonNull android.location.Location);
686  }
687
688}
689
690package android.location.provider {
691
692  public final class ProviderProperties implements android.os.Parcelable {
693    method public int describeContents();
694    method public int getAccuracy();
695    method public int getPowerUsage();
696    method public boolean hasAltitudeSupport();
697    method public boolean hasBearingSupport();
698    method public boolean hasCellRequirement();
699    method public boolean hasMonetaryCost();
700    method public boolean hasNetworkRequirement();
701    method public boolean hasSatelliteRequirement();
702    method public boolean hasSpeedSupport();
703    method public void writeToParcel(@NonNull android.os.Parcel, int);
704    field public static final int ACCURACY_COARSE = 2; // 0x2
705    field public static final int ACCURACY_FINE = 1; // 0x1
706    field @NonNull public static final android.os.Parcelable.Creator<android.location.provider.ProviderProperties> CREATOR;
707    field public static final int POWER_USAGE_HIGH = 3; // 0x3
708    field public static final int POWER_USAGE_LOW = 1; // 0x1
709    field public static final int POWER_USAGE_MEDIUM = 2; // 0x2
710  }
711
712  public static final class ProviderProperties.Builder {
713    ctor public ProviderProperties.Builder();
714    ctor public ProviderProperties.Builder(@NonNull android.location.provider.ProviderProperties);
715    method @NonNull public android.location.provider.ProviderProperties build();
716    method @NonNull public android.location.provider.ProviderProperties.Builder setAccuracy(int);
717    method @NonNull public android.location.provider.ProviderProperties.Builder setHasAltitudeSupport(boolean);
718    method @NonNull public android.location.provider.ProviderProperties.Builder setHasBearingSupport(boolean);
719    method @NonNull public android.location.provider.ProviderProperties.Builder setHasCellRequirement(boolean);
720    method @NonNull public android.location.provider.ProviderProperties.Builder setHasMonetaryCost(boolean);
721    method @NonNull public android.location.provider.ProviderProperties.Builder setHasNetworkRequirement(boolean);
722    method @NonNull public android.location.provider.ProviderProperties.Builder setHasSatelliteRequirement(boolean);
723    method @NonNull public android.location.provider.ProviderProperties.Builder setHasSpeedSupport(boolean);
724    method @NonNull public android.location.provider.ProviderProperties.Builder setPowerUsage(int);
725  }
726
727}
728
729