Как возобновить несколько фоновых загрузок с помощью AFURLSessionManager в приложении iOS

У меня есть приложение для iOS, которое позволяет загружать несколько книг одновременно, на самом деле это приложение для чтения. Ранее я использовал AFDownloadRequestOperation для загрузки книги. Когда пользователь запускает приложение после сбоя приложения или после того, как пользователь принудительно закрывает (убивает) приложение, оно автоматически возобновляет загрузку со смещения, с которого оно прекратило загрузку, и для этого я использовал следующий метод:

AFDownloadRequestOperation * operation = [[AFDownloadRequestOperation alloc] initWithRequest: запрос targetPath: путь shouldResume:YES];

Сейчас я использую AFNetworking 2.0 API AFHTTPSessionManager для фоновой загрузки. Я создал фоновую сессию следующим образом:

        NSString* strIdentifier = [NSString stringWithFormat:@"someUniqueIdentifier"];
        NSURLSessionConfiguration *sessionConfig;
        if ([[[UIDevice currentDevice] systemVersion] floatValue] >=8.0f)
        {
            sessionConfig =[NSURLSessionConfiguration backgroundSessionConfigurationWithIdentifier:strIdentifier];
        }
        else
        {
            sessionConfig = [NSURLSessionConfiguration backgroundSessionConfiguration:strIdentifier];
        }
        self.backgroundSessionManager = [[AFHTTPSessionManager alloc] initWithSessionConfiguration:sessionConfig];

Затем я запустил задачу фоновой загрузки следующим образом с обратными вызовами делегатов:

self.bookDownloadTask = [self.backgroundSessionManager downloadTaskWithRequest: ход выполнения запроса: ноль пункт назначения: ноль завершение Handler: ноль];

[self.bookDownloadTask резюме];

Итак, еще раз, учитывая предыдущую ситуацию -

Когда пользователь запускает приложение после сбоя приложения или после того, как пользователь принудительно закрывает (убивает) приложение, оно автоматически начинает (не возобновляет) загрузку, но не по смещению, в котором оно оставило загрузку, оно начинает загрузку с начала книги.

Есть ли способ автоматически возобновить загрузку со смещения, с которого она вышла, используя AFHTTPSessionManager??

Любая помощь будет оценена. Спасибо!!

0 ответов

Другие вопросы по тегам