Chcę zbudować aplikację, która może ustawić ustaloną ilość geo-ogrodzonych regionów kwadratowych w mieście, Wiem, że mógłbym to osiągnąć, włączając położenie w tle i sprawdzić te współrzędne, aby określić, czy są w moim obszarze zainteresowania.Geofence API dla iOS 5
Ale to oznaczałoby otrzymanie wielu powiadomień z systemu i spowodowałoby spadek wydajności baterii.
Zamiast tego zastanawiałem się, czy istnieje nowy interfejs API lub prawdopodobnie nadchodzący, który pozwoliłby ustawić geo fence i byłby tylko powiadamiany przez system, jeśli jesteś w środku lub w pobliżu, a następnie stale monitorował swoją lokalizację .
Czy to możliwe?
znalazłem następujące pytanie, ale nie mogę znaleźć nic innego: http://www.quora.com/Is-the-geo-fence-functionality-built-into-iOS5s-Reminders-application-available-as-a-public-facing-API
To wydaje mi się, że jest coś więcej do geo ogrodzenia następnie śledzenie GPS i porównując do tablicy punktów zainteresowanie. Jeśli ustawię aplikację przypomnień, aby przypomnieć mi, że muszę dziś wieczorem odprowadzić mojego współlokatora, wtedy widzę ikonę lokalizacji u góry ekranu.
Jeśli otworzę pasek wielozadaniowości i usuwam przypomnienia, ikona lokalizacji będzie się powtarzać, wskazując, że telefon mnie śledzi, ale jest to niezależne zadanie dla aplikacji przypomnień.
Jeśli skonfiguruję aplikację ze śledzeniem lokalizacji w tle i usuniemy z paska zadań wielozadaniowych, ikona lokalizacji zniknie wraz z aplikacją. To sprawia, że wierzę, że istnieje interfejs API do geo-fencing na iOS 5.x, to pozwoli aplikacjom wysyłać tablicę współrzędnych do systemu i otrzymywać lokalne powiadomienia w oparciu o bliskość tych punktów.
Czy coś podobnego istnieje, czy jeszcze nie?
Dzięki
Aktualizacja dla przyszłych użytkowników
Wydaje się, że limit 10 regionów na aplikacji, które mogą być monitorowane w każdej chwili (mój osobisty testowym), ponieważ jest to zasób udostępniony.
Apple Documentation ekstrakt:
Należy zawsze być rozsądny przy określaniu zbiór regionów monitorować. Regiony są wspólnym zasobem systemowym, a całkowita liczba regionów dostępnych w całym systemie jest ograniczona.
StartMonitoringForRegion: desiredAccuracy: dostał przestarzałe z iOS6. Teraz możesz użyć regionu startMonitoringForRegion: (CLRegion *) – Augustine