Ни один из этих вариантов не отвечает за большее или меньшее потребление батареи.
Чтобы ваше приложение было уведомлено о любом обновлении местоположения, независимо от того, идет ли речь об изменении региона или существенном изменении местоположения, вы должны указать в файле Info.plist своего приложения, что вам потребуется location- услуги в фоновом режиме.
На самом деле существует два варианта выбора услуг определения местоположения: услуги определения местоположения или gps .
Чтобы НЕ разряжать батарею пользователя, выберите location-services . Если вы говорите, что вашему приложению нужны фоновые службы gps , вы БУДЕТЕ разряжать батарею, потому что это приведет к включению оборудования GPS (при условии его наличия), а ЭТО является причиной разряда батареи. Когда вы указываете location-services , устройство использует сотовую радиосвязь (которая в любом случае включена, если у вас есть iPhone) вместо этого, чтобы точно определить местоположение. Не так точно, как GPS , но большинству приложений не нужна точность GPS. (Если вы это сделаете, тогда, конечно, используйте gps , но знайте последствия в сравнении с временем автономной работы.)
Недавно я написал тестовое приложение об этом (и я писал об этом на прошлой неделе здесь ), и я обнаружил, что не было значительной разрядки батареи, когда у меня было несколько регионов, настроенных для мониторинга, и я указал location-services в качестве обязательной фоновой услуги.