2013-03-20 8 views
5

Witam, czy ktoś wie, jaki wpływ na zachowanie automatycznej pauzy ma używanie różnych stałych typu CLActivity? Na przykład, czy menedżer położenia zostanie wznowiony z pauzy z większą łatwością, jeśli parametr activityType ma wartość CLActivityTypeAutomotiveNavigation lub CLAcitivtyTypeFitness?autopauza rdzenia lokalizacji, efekty typu działania

Dzięki za pomoc.

Odpowiedz

12

Flagi typu działania wpływają na wewnętrzną logikę automatycznej pauzy. Na przykład: CLActivityTypeFitness jest bardziej prawdopodobne, że zatrzyma się, gdy użytkownik jest nieruchomy, bez ruchu przyspieszeniomierza i gdy użytkownik porusza się szybko z przyspieszeniem ruchu podobnym do pojazdu i na odwrót dla CLActivityTypeAutomotiveNavigation. CLActivityTypeOther ma być ustawieniem "catch-all" dla wszystkiego innego. Jednak dokładna logika i progi są znane tylko Apple.

O ile mi wiadomo, aktualizacje lokalizacji są wznawiane tylko wtedy, gdy aplikacja ponownie się uruchomi, nie ma automatycznego wznowienia w zależności od ruchu użytkownika. Ale zawsze możesz uruchomić monitorowanie regionu w swoim callpołączeniu didPause, aby wznowić śledzenie, gdy użytkownik się ruszy.

+0

Dzięki za to. FWIW, otrzymuję 'pauzyLocationUpdatesAutomatically = NO' najwyraźniej ignorowane w iOS 8 GM. – tooluser

+0

Czy masz na myśli wewnątrz 'locationManagerDidPauseLocationUpdates' zrobić' locationManager.startMonitoringForRegion (region) '** LUB ** masz na myśli lubisz' UNLocationNotificationTrigger (region: region, repeats: false) '? Który? – Honey