android.LocationManager class
public class LocationManager
extends Object
java.lang.Object
↳ android.location.LocationManager
Ta klasa zapewnia dostęp do usług lokalizacji systemu. Usługi te umożliwiają aplikacjom otrzymywanie okresowych aktualizacji lokalizacji geograficznej urządzenia lub otrzymywanie powiadomień, gdy urządzenie znajdzie się w pobliżu określonej lokalizacji geograficznej.
O ile nie zaznaczono inaczej, wszystkie metody interfejsu Location API wymagają uprawnień Manifest.permission.ACCESS_COARSE_LOCATION lub Manifest.permission.ACCESS_FINE_LOCATION. Jeśli Twoja aplikacja ma tylko uprawnienia zgrubne, dostawcy nadal będą zwracać wyniki lokalizacji, ale dokładna lokalizacja zostanie zaciemniona z przybliżonym poziomem dokładności.
Wymaga funkcji PackageManager#FEATURE_LOCATION, którą można wykryć za pomocą PackageManager.hasSystemFeature(String).
Stałe:
String
|
ACTION_GNSS_CAPABILITIES_CHANGED Rozgłaszanie działania intencji, gdy zmieniają się możliwości GNSS. |
|
String |
EXTRA_GNSS_CAPABILITIES Dodatkowe intencje zawarte w transmisjach ACTION_GNSS_CAPABILITIES_CHANGED, zawierających nowe funkcje GnssCapabilities. |
|
String
|
EXTRA_LOCATION_ENABLED Dodatkowa intencja dołączona do emisji MODE_CHANGED_ACTION, zawierająca stan lokalizacji włączony logicznie. |
|
String |
EXTRA_PROVIDER_ENABLED Dodatkowa intencja dołączona do emisji PROVIDERS_CHANGED_ACTION, zawierająca stan włączenia wartości logicznej dostawcy lokalizacji, który uległ zmianie. |
|
String |
EXTRA_PROVIDER_NAME Dodatkowa intencja dołączona do emisji PROVIDERS_CHANGED_ACTION, zawierająca nazwę dostawcy lokalizacji, który uległ zmianie. |
|
String
|
FUSED_PROVIDER Standardowa nazwa dostawcy połączonej lokalizacji. |
|
String
|
GPS_PROVIDER Standardowa nazwa dostawcy lokalizacji GNSS. |
|
String |
KEY_FLUSH_COMPLETE Klucz używany do dodatkowego przechowywania kodu żądania w postaci liczby całkowitej, gdy zakończenie opróżniania lokalizacji jest wysyłane przy użyciu oczekującej intencji PendingIntent. |
|
String |
KEY_LOCATIONS Klucz używany do dodatkowego przechowywania tablicy Locations, gdy zmiana lokalizacji jest wysyłana przy użyciu PendingIntent (oczekującej intencji). |
|
String |
KEY_LOCATION_CHANGED Klucz używany do dodatkowego przechowywania wartości lokalizacji, gdy zmiana lokalizacji jest wysyłana za pomocą oczekującej intencji PendingIntent. |
|
String |
KEY_PROVIDER_ENABLED Klucz używany do dodatkowego przechowywania wartości logicznej włączonej/wyłączonej, gdy zdarzenie włączone/wyłączone przez dostawcę jest emitowane przy użyciu oczekującej intencji PendingIntent. |
|
String |
KEY_PROXIMITY_ENTERING Klucz używany do dodatkowego pakietu zawierającego wartość logiczną wskazującą, czy alarm zbliżeniowy wchodzi (true), czy wychodzi (false). |
|
String |
KEY_STATUS_CHANGED Ten klucz nie jest już używany. Klucz używany do dodatkowego pakietu zawierającego wartość stanu Integer, gdy zmiana stanu jest emitowana przy użyciu PendingIntent. Ta stała została przestarzała na poziomie interfejsu API 29. Zmiany stanu są przestarzałe i nie są już emitowane od systemu Android Q. |
|
String
|
MODE_CHANGED_ACTION Akcja rozgłaszania po zmianie stanu włączenia lokalizacji urządzenia. |
|
String
|
NETWORK_PROVIDER Standardowa nazwa dostawcy lokalizacji sieciowej. |
|
String
|
PASSIVE_PROVIDER Specjalny dostawca lokalizacji do odbierania lokalizacji bez aktywnego inicjowania naprawy lokalizacji. |
|
String
|
PROVIDERS_CHANGED_ACTION Akcja intencji emisji, gdy zmienia się zestaw włączonych dostawców lokalizacji. |
Metody publiczne:
boolean |
addGpsStatusListener(GpsStatus.Listener listener) Ta metoda jest przestarzała na 24 poziomie API. Zamiast tego użyj registerGnssStatusCallback(android.location.GnssStatus.Callback). Nie jest już obsługiwane w aplikacjach kierowanych na literę S i nowsze. |
|
boolean
|
addNmeaListener(OnNmeaMessageListener listener, Handler handler) Dodaje detektor NMEA. |
|
boolean |
addNmeaListener(OnNmeaMessageListener listener) Ta metoda jest przestarzała na 30 poziomie API. Zamiast tego użyj addNmeaListener(android.location.OnNmeaMessageListener, android.os.Handler) lub addNmeaListener(java.util.concurrent.Executor, android.location.OnNmeaMessageListener). |
|
boolean
|
addNmeaListener(GpsStatus.NmeaListener listener) Ta metoda jest przestarzała na 24 poziomie API. Zamiast tego użyj addNmeaListener(GpsStatus.NmeaListener). |
|
boolean
|
addNmeaListener(Executor executor, OnNmeaMessageListener listener) Dodaje detektor NMEA. |
|
void |
addProximityAlert(double latitude, double longitude, float radius, long expiration, PendingIntent pendingIntent) Ustawia alert zbliżeniowy dla lokalizacji podanej przez pozycję (szerokość, długość geograficzną) i podany promień. |
|
void
|
addTestProvider(String provider, ProviderProperties properties) Tworzy dostawcę lokalizacji testowej i dodaje go do zestawu aktywnych dostawców. |
|
void
|
addTestProvider(String provider, ProviderProperties properties, Set<String> extraAttributionTags) Tworzy dostawcę lokalizacji testowej i dodaje go do zestawu aktywnych dostawców." |
|
void |
addTestProvider(String provider, boolean requiresNetwork, boolean requiresSatellite, boolean requiresCell, boolean hasMonetaryCost, boolean supportsAltitude, boolean supportsSpeed, boolean supportsBearing, int powerUsage, int accuracy) Tworzy dostawcę lokalizacji testowej i dodaje go do zestawu aktywnych dostawców. |
|
void |
clearTestProviderEnabled(String provider) Ta metoda jest przestarzała na 29 poziomie API. Zamiast tego użyj setTestProviderEnabled(java.lang.String, boolean). |
|
void |
clearTestProviderLocation(String provider) Ta metoda została przestarzała w interfejsie API na poziomie 29. Ta metoda zawsze była metodą bez operacji i może zostać usunięta w przyszłości. |
|
void |
clearTestProviderStatus(String provider) Ta metoda została uznana za przestarzałą na poziomie interfejsu API 29. Ta metoda nie ma żadnego efektu. |
|
List<String>
|
getAllProviders() Zwraca listę nazw wszystkich dostępnych dostawców lokalizacji. |
|
String
|
getBestProvider(Criteria criteria, boolean enabledOnly) Zwraca nazwę dostawcy, który najlepiej spełnia podane kryteria. |
|
void |
getCurrentLocation(String provider, LocationRequest locationRequest, CancellationSignal cancellationSignal, Executor executor, Consumer<Location> consumer) Asynchronicznie zwraca jedną bieżącą poprawkę lokalizacji od danego dostawcy na podstawie danego LocationRequest. |
|
void |
getCurrentLocation(String provider, CancellationSignal cancellationSignal, Executor executor, Consumer<Location> consumer) Asynchronicznie zwraca jedną bieżącą poprawkę lokalizacji od danego dostawcy. |
|
List<GnssAntennaInfo>
|
getGnssAntennaInfos() Zwraca aktualną listę informacji o antenie GNSS lub null, jeśli jest nieznany lub nieobsługiwany. |
|
GnssCapabilities
|
getGnssCapabilities() Zwraca obsługiwane możliwości chipsetu GNSS. |
|
String
|
getGnssHardwareModelName() Zwraca nazwę modelu (w tym wersję dostawcy i sprzętu/oprogramowania) sterownika sprzętowego GNSS lub null, jeśli te informacje nie są dostępne. |
|
int |
getGnssYearOfHardware() Zwraca rok modelowy kompilacji sprzętu i oprogramowania GNSS lub 0, jeśli rok modelowy przypada przed 2016 r. |
|
GpsStatus |
getGpsStatus(GpsStatus status) Ta metoda została wycofana na poziomie interfejsu API 24. Interfejsy API GpsStatus są przestarzałe, zamiast nich należy używać interfejsów API GnssStatus. Nie jest już obsługiwane w aplikacjach kierowanych na literę S i nowsze. |
|
Location
|
getLastKnownLocation(String provider) Pobiera ostatnią znaną lokalizację od danego dostawcy lub null, jeśli nie ma ostatniej znanej lokalizacji. |
|
LocationProvider |
getProvider(String provider) Ta metoda została przestarzała na poziomie interfejsu API 31. Ta metoda nie ma możliwości wskazania, że właściwości dostawcy są nieznane, dlatego w rzadkich przypadkach może zwracać nieprawidłowe wyniki. Zamiast tego użyj getProviderProperties(java.lang.String). |
|
ProviderProperties
|
getProviderProperties(String provider) Zwraca właściwości danego dostawcy lub null, jeśli właściwości są obecnie nieznane. |
|
List<String>
|
getProviders(boolean enabledOnly) Zwraca listę nazw dostępnych dostawców lokalizacji. |
|
List<String>
|
getProviders(Criteria criteria, boolean enabledOnly) Zwraca listę nazw dostępnych dostawców lokalizacji, którzy spełniają podane kryteria. |
|
boolean
|
hasProvider(String provider) Zwraca true, jeśli dany dostawca lokalizacji istnieje na tym urządzeniu, niezależnie od tego, czy jest obecnie włączony, czy nie. |
|
boolean
|
isLocationEnabled() Zwraca bieżący stan włączenia/wyłączenia lokalizacji. |
|
boolean
|
isProviderEnabled(String provider) Zwraca aktualny stan włączony/wyłączony danego dostawcy. |
|
boolean |
registerAntennaInfoListener(Executor executor, GnssAntennaInfo.Listener listener) Rejestruje odbiornik informacji o antenie GNSS, który odbierze wszystkie zmiany informacji o antenie. |
|
boolean
|
registerGnssMeasurementsCallback(Executor executor, GnssMeasurementsEvent.Callback callback) Rejestruje wywołanie zwrotne pomiarów GNSS. |
|
boolean |
registerGnssMeasurementsCallback(GnssMeasurementsEvent.Callback callback) Ta metoda jest przestarzała na poziomie API 30. Zamiast tego użyj registerGnssMeasurementsCallback(GnssMeasurementsEvent.Callback, Handler) lub registerGnssMeasurementsCallback(Executor, GnssMeasurementsEvent.Callback). Wymaga Manifest.permission.ACCESS_FINE_LOCATION |
|
boolean
|
registerGnssMeasurementsCallback(GnssMeasurementRequest request, Executor executor, GnssMeasurementsEvent.Callback callback) Rejestruje wywołanie zwrotne pomiaru GNSS. |
|
boolean
|
registerGnssMeasurementsCallback(GnssMeasurementsEvent.Callback callback, Handler handler) Rejestruje wywołanie zwrotne pomiarów GNSS. |
|
boolean
|
EE D. |
|
boolean
|
EE D. |
|
boolean
|
EE D. |
|
boolean
|
EE D. |
|
boolean
|
EE D. |
|
boolean
|
EE D. |
|
void |
EE D. |
---------------------------iiii-----------------------------------------
Odziedziczone stałe:
Z interfejsu android.os.Parcelable | ||
int
|
CONTENTS_FILE_DESCRIPTOR Bit deskryptora używany z defineContents(): wskazuje, że spłaszczona reprezentacja obiektu Parcelable zawiera deskryptor pliku. |
|
int |
PARCELABLE_WRITE_RETURN_VALUE Flaga do użycia z writeToParcel(Parcel, int): zapisywany obiekt jest wartością zwracaną, która jest wynikiem funkcji takiej jak "Parcelable someFunction()", "void someFunction(out Parcelable)" lub "void someFunction( wout Parcelable)". |