Это в некоторой степени зависит от флагов UIBackgroundModes в вашем комплекте.Вы можете использовать их, чтобы сообщить iOS, что вы хотите продолжить работу в фоновом режиме.Вы также можете динамически запрашивать достаточно времени для продолжения загрузки в течение нескольких минут, используя beginBackgroundTaskWithExpirationHandler.
Если вы ничего не делаете, по умолчанию приложение приостанавливается - NSTimers не будет срабатывать, пока вы не вернетесь на передний план.Если вы находитесь в цикле основного потока, ваше приложение получит немного времени для его завершения, но точное количество времени не указано.Если цикл в главном потоке занимает слишком много времени, ваше приложение будет остановлено, даже если вы находитесь на переднем плане.
Я не уверен на 100%, что происходит с NSURLConnections, но я подозреваю, что они отменены по умолчанию.
См .:
Руководство по программированию iPhoneOS (PDF), с.65
Что касается вашей проблемы с батареей, ваше приложение может определенно отвечать за это.Например, GPS - это печально известная проблема с зарядом аккумулятора, особенно если вы продолжаете работать в фоновом режиме для воспроизведения звука или другой обработки.