Ответ 1
Сеансы по умолчанию ведут себя аналогично другим методам Foundation для загрузки URL-адресов. Они используют постоянный кэш на диске и хранят учетные данные в цепочке ключей пользователей.
-
Конфигурация, которая использует глобальные или общие файлы cookie, кеша и хранилища учетных данных. Поведение аналогично NSURLConnection.
-
Общий сеанс использует глобальные одноуровневые учетные данные, кеш файлы и файлы хранилища файлов cookie. Это можно использовать вместо существующего кода, который использует + [NSURLConnection sendAsynchronousRequest: queue: completeHandler:]
Эфемерные сессии не хранят данные на диске; все кэши, хранилища учетных данных и т.д. хранятся в ОЗУ и привязаны к сеансу. Таким образом, когда ваше приложение аннулирует сеанс, они автоматически очищаются.
- Конфигурация приватного сеанса, которая не сохраняет объекты хранилища файлов cookie, кеш и учетных данных. Как видно из названия, настройки конфигурации коротки, и они удаляются, когда сеанс недействителен.
Фоновые сессии аналогичны сеансам по умолчанию, за исключением того, что отдельный процесс обрабатывает все передачи данных. Фоновые сеансы имеют некоторые дополнительные ограничения, описанные в "" Фоновые передачи".
-
Фоновый сеанс похож на сеанс по умолчанию, но он может использоваться для выполнения сетевых операций от имени приостановленного приложения в определенных ограничениях.
-
Аналогично сеансу по умолчанию, но загрузка или загрузка данных может выполняться даже тогда, когда приложение находится в состоянии приостановления.
Ссылка из Apple Doc
//Default session
+ (NSURLSessionConfiguration *)defaultSessionConfiguration;
//Ephemeral
+ (NSURLSessionConfiguration *)ephemeralSessionConfiguration;
//Background
+ (NSURLSessionConfiguration *)backgroundSessionConfiguration:(NSString *)identifier;
Задачи и делегаты NSURLSession
Ниже приведено описание типов задач NSURLSession и их иерархии.