Czy aplikacja w systemie iOS 8 może uzyskiwać dostęp do usług lokalizacyjnych, nawet jeśli nie jest uruchomiona?

2

Mam zainstalowaną aplikację Kohla na moim iPhonie z systemem iOS 8.1. Zauważam, że ilekroć włączę dostęp do lokalizacji dla tej konkretnej aplikacji, zaczyna ona natychmiast pingować moją lokalizację na podstawie ikony usług lokalizacyjnych na pasku stanu i fioletowej ikony usług lokalizacyjnych obok aplikacji w ustawieniach. Dzieje się tak, nawet jeśli aplikacja nie jest uruchomiona, i mam wyłączoną funkcję odświeżania aplikacji w tle dla tej aplikacji, chociaż nie powinno to mieć znaczenia, ponieważ nie działa nawet w tle.

Czy to oczekiwane zachowanie? Jeśli tak, czy istnieje sposób, aby umożliwić dostęp do lokalizacji tylko wtedy, gdy uruchamiam aplikację?

Szansa
źródło

Odpowiedzi:

2

Sama aplikacja musi obsługiwać opcję „Podczas korzystania z aplikacji”. Jeśli nie, to jak odkryłeś, jedynymi opcjami są „Zawsze” lub „Nigdy”.

Przypuszczalnie chcesz zezwolić tej aplikacji na dostęp do Twojej lokalizacji w celu przypominania o geofencingach (np. Ofertach). Jeśli tak, musisz wybrać „Zawsze”, a aplikacja jest do pewnego stopnia na łasce aplikacji, biorąc pod uwagę, jak często pobiera Twoją lokalizację i jak jest używana. Aplikacje na iOS 8, nawet gdy są zakończone, a nawet przy wyłączonym odświeżaniu aplikacji w tle, mogą nadal otrzymywać pewne zdarzenia usług lokalizacyjnych przez iOS:

  • znacząca usługa zmiany lokalizacji
  • usługa monitorowania regionu
  • odwiedź serwis

Jedyną inną opcją jest odmowa lokalizacji aplikacji za pomocą „Nigdy”.

Informacje na temat głównego menedżera lokalizacji Apple znajdują się tutaj: https://developer.apple.com/library/ios/documentation/CoreLocation/Reference/CLLocationManager_Class/index.html

pseudon
źródło