Нужно ли мне добавлять setBatteryMonitoringEnabled для мониторинга уровня заряда батареи iPhone4 на iOS5?

Я запускаю приложение, которое собирает данные акселерометра и гироскопа в одночасье. Это очень энергоемкая операция, и я хотел бы научить мое приложение распознавать, когда батарея разряжается.

Вот мой прототип кода, который проверяет уровень заряда батареи каждые 10 минут

NSDate* date = [NSDate date];
      if((int)([date timeIntervalSinceReferenceDate])%600 == 0)
            {
                UIDevice *myDevice = [UIDevice currentDevice];
                [myDevice setBatteryMonitoringEnabled:YES];
                float batLeft = [myDevice batteryLevel]; 
                int batinfo=(batLeft*100);

            [self postStatusMessageWithTitle:nil
                                 description:[NSString stringWithFormat:@"%@ battery level: %i",[dateFormat stringFromDate:dateShow],batinfo]];
                [myDevice setBatteryMonitoringEnabled:NO];
            }

Мой вопрос заключается в следующем: мне нужно добавить эту строку в конец кода:

[myDevice setBatteryMonitoringEnabled:NO];

Похоже, что проверка батареи выполняется тут же, асинхронных вызовов делегатов нет. Приведет ли установка значения «NO» к экономии заряда батареи из-за того, что нет необходимости контролировать уровень заряда батареи в течение ночи? Буду ли я что-нибудь сломать, установив НЕТ?

Спасибо за любой вклад!

Ответы на вопрос(1)

Ваш ответ на вопрос