Я искал буквально недели, чтобы попытаться найти ответ или пример того, как это сделать.
Все примеры/учебные пособия для NSURLConnection показывают, что они начинаются на переднем плане или начинаются в фоновом режиме, так же как и все примеры для beginBackgrounTaskWithExpirationHandler: покажите, как запустить фоновое задание после ввода фона.
Насколько я могу судить, нет ничего в Интернете или книгах, где показано, как начать соединение, находясь на переднем плане, а затем, если оно не закончено, продолжите его в фоновом режиме.
Ответ на этот вопрос на самом деле не отвечает на вопрос:
Если вы прочитали раздел "За пределами основ", он говорит: "Пока приложение находится на переднем плане, фоновая задача не будет иметь никакого эффекта". Это означает, что не стоит начинать фоновое задание с использованием NSURLConnection, находясь на переднем плане, если вы хотите загрузить его на передний план.