Migracja do interfejsów API lokalizacji i kontekstu w Usługach Google Play

W aplikacjach, które wymagają usług wykorzystujących lokalizację, Google zaleca korzystanie z interfejsów API lokalizacji i kontekstu w usługach Google Play. Jeśli Twoja aplikacja korzysta z interfejsów API lokalizacji platformy, warto przejść na Usługi Google Play, aby korzystać z najnowszych funkcji Google.

Korzystanie z usług Google Play to preferowana opcja uzyskiwania usług wykorzystujących lokalizację w aplikacji z tych powodów:

  1. Usługi Google Play zapewniają prosty interfejs i bardziej przejrzysty interfejs API.
  2. Określasz wymaganą jakość usługi, a interfejsy API zarządzają za Ciebie podstawowymi technologiami.
  3. Interfejsy API Usług Google Play są zoptymalizowane pod kątem wydajności i zużycia baterii.
  4. Interfejsy API usług Google Play są aktywnie utrzymywane. Google stale ulepsza algorytmy i dodaje nowe funkcje.

Zaktualizuj aplikację

Poniżej opisujemy, jak zaktualizować aplikację, aby korzystała z interfejsów API lokalizacji i kontekstu:

  1. skonfigurować usługi Google Play w projekcie,
  2. Użyj interfejsu API ustawień lokalizacji, aby sprawdzić bieżące ustawienia lokalizacji.
  3. Używaj Usług Google Play do złożonych funkcji, takich jak geofencing, rozpoznawanie aktywności i świadomość.
  4. Zastąp użycie interfejsu API lokalizacji platformy interfejsem API dostawcy uśrednionej lokalizacji.
  5. Usuń odwołania do interfejsu API lokalizacji platformy.

Konfigurowanie usług Google Play w projekcie

Aby interfejsy API lokalizacji i kontekstu były dostępne w projekcie, musisz dodać odwołanie do repozytorium Maven Google i zadeklarować zależność od wymaganych interfejsów API. Więcej informacji znajdziesz w artykule Konfigurowanie Usług Google Play.

Korzystanie z interfejsu API ustawień lokalizacji

Dzięki interfejsowi API ustawień lokalizacji aplikacje zapewniają wymagany poziom QoS, a interfejs API prosi użytkownika o wprowadzenie odpowiednich zmian w ustawieniach systemu. Aby używać interfejsu API ustawień lokalizacji w aplikacji, wykonaj te czynności:

  1. Poproś o dostęp do lokalizacji w manifeście aplikacji.
  2. Skonfiguruj obiekt LocationRequest, który określa żądany poziom QoS.
  3. Użyj interfejsu API ustawień lokalizacji, aby sprawdzić bieżące ustawienia.

Więcej informacji znajdziesz w artykule Zmienianie ustawień lokalizacji. Przykładowy kod znajdziesz w przykładach lokalizacji w Google Play.

Korzystanie z usług Google Play w przypadku złożonych funkcji

Biblioteki Usług Google Play pomagają wdrażać nowe funkcje związane z kontekstem i świadomością otoczenia użytkownika. Różne biblioteki lokalizacji i kontekstu wykorzystują dodatkowe czujniki, nie tylko lokalizacyjne, i robią to w sposób energooszczędny, dostarczając aplikacji dokładniejsze dane przy mniejszym wpływie na czas pracy na baterii.

Zamiast pisać własne rozwiązania, użyj tych bibliotek:

Zastąp interfejs API lokalizacji platformy interfejsem API dostawcy uśrednionej lokalizacji

Możesz użyć interfejsu API dostawcy uśrednionej lokalizacji, aby uzyskać dane o lokalizacji, takie jak szerokość i długość geograficzna. Interfejs API dostawcy uśrednionej lokalizacji używa obiektu Location (podobnie jak interfejs API platformy lokalizacyjnej) do reprezentowania położenia geograficznego. Interfejs API udostępnia funkcje, które umożliwiają nasłuchiwanie informacji o zmianie lokalizacji oraz uzyskiwanie ostatniej znanej lokalizacji. Wszystkie te funkcje sprawiają, że interfejs API dostawcy uśrednionej lokalizacji jest dobrym kandydatem do zastąpienia komponentów korzystających z interfejsu API lokalizacji platformy przy minimalnych zmianach w pozostałej części aplikacji.

Pobieranie ostatniej znanej lokalizacji to dobry punkt wyjścia w wielu przypadkach, ponieważ jest to szybka operacja, która wykorzystuje dane o lokalizacji żądane przez dowolnego klienta na urządzeniu. Aby okresowo śledzić lokalizację, aplikacja może zasubskrybować otrzymywanie informacji o zmianie lokalizacji, co zapewnia aktualne dane i umożliwia bardziej złożone działania.

Usuwanie odwołań do interfejsu API lokalizacji platformy

Zastąp odwołania do klas w pakiecie com.google.android.location klasami z pakietu com.google.android.gms.location, z wyjątkiem odwołań do klasy Location, której używa interfejs API dostawcy uśrednionej lokalizacji. Zwykle możesz usunąć z aplikacji komponenty, które zarządzają różnymi dostawcami, takimi jak GPS i Wi-Fi. Interfejsy API lokalizacji i kontekstu automatycznie zarządzają tymi dostawcami.

Testowanie aplikacji

Aby uruchomić aplikację, która korzysta z najnowszej wersji Usług Google Play, musisz mieć urządzenie z zainstalowaną aplikacją Sklep Play i zalogować się na konto Google. Do celów programistycznych możesz użyć tych opcji:

  • urządzenie fizyczne połączone ze środowiskiem programistycznym za pomocą kabla USB;
  • emulator z zainstalowaną aplikacją Sklep Play,

Więcej informacji o łączeniu urządzenia fizycznego ze środowiskiem programistycznym znajdziesz w artykule Uruchamianie aplikacji na urządzeniu. Aby utworzyć emulator zawierający aplikację Sklep Play, zapoznaj się z artykułem Tworzenie urządzeń wirtualnych i zarządzanie nimi.