startMonitoringForRegion: требуемая точность: vs startMonitoringForRegion: - PullRequest
1 голос
/ 15 октября 2011

IOS4 имеет startMonitoringForRegion: требуемый точность: метод.

IOS5 добавил startMonitoringForRegion: (без точности).

Вся документация гласит: «Вы должны вызвать этот [новый] метод илиstartMonitoringForRegion: требуемая точность: метод "и т. д. Подробности не приводятся.

Кто-нибудь знает, в чем разница между этими двумя понятиями?Должен ли я вызвать метод IOS5, если он поддерживается?

Ответы [ 3 ]

0 голосов
/ 23 октября 2011

Это действительно зависит от того, что вам нужно. Обратите внимание, что означает желаемый параметр точности:

Вы указываете желаемое расстояние подушки для региона, когда вы регистрируете его, используя метод startMonitoringForRegion: requiredAccuracy:. Это значение амортизации не позволяет системе генерировать многочисленные входящие и выходящие события в быстрой последовательности, пока пользователь перемещается близко к границе. "

В моем понимании и из моего тестирования новый метод, который не использует этот параметр, использует некоторую внутреннюю логику, чтобы знать, когда вызывать событие. (Похоже, это зависит от того, включен ли Wi-Fi или от текущей точности определения местоположения в целом ...)

0 голосов
/ 25 июля 2012

Метод iOS5, startMonitoringForRegion: (без точности), использует свойство requiredAccuracy вашего объекта CLLocationManager, чтобы определить уровень используемой точности. По сути это эквивалентно:

[myLocationManager startMonitoringForRegion:myRegion desiredAccuracy:myLocationManager.desiredAccuracy];

Так что используйте метод iOS5, если вы уже устанавливаете желаемую точность в другом месте, но используйте метод iOS4, если вы не устанавливаете его в другом месте, или вы хотите переопределить существующую требуемую точность.

0 голосов
/ 17 октября 2011

Это в основном обновленный метод, который позволяет вам добавлять вызовы для точности. Более старый метод поддерживается для устройств с iOS 4 без сбоя. Я не пробовал звонки без ловушки точности, но думаю, что они должны работать аналогично, но точность позволяет системе узнать, как часто обновлять, чтобы увеличить время автономной работы.

...