2015-06-25 4 views
2

Мне было интересно, можно ли возобновить загрузку после того, как приложение было прервано пользователем или ОС.Резюме скачать после того, как приложение было закрыто

Я вижу, что SKTDownloadManager имеет способы приостановить и возобновить загрузку. Однако эти методы работают только для тока SKTDownloadObjectHelper с. Если я вытащил их из SKTDownloadManager.storedDownloadObjects()после приложение было уволено, а затем снова запущено и брошено на SKTDownloadManager.sharedInstance().resumeDownloadForDownloadHelper(), менеджер не возобновит скачивание.

Я углубился в код и что эти загрузки не перезапускаются из-за отсутствия надлежащего статуса. SKTGroupedDownloadOperation.m:87:

if (self.currentRunningGroupedOperation.stateDownloadItem >= SKTMapDownloadItemStatusDownloading) { 
    return NO; //cannot start download,isntall, finsihed 
} 

Итак, мои вопросы, является ли это даже возможно возобновление загрузки после того, как приложение было прекращено, и если это так, как я это делаю. Любая помощь приветствуется :)

+0

Мы прошли этот вопрос разработчику SKTDownloadManager с просьбой о поддержке – Ando

+0

Спасибо, Андо! –

+0

Привет Андо, какие-нибудь обновления? –

ответ

2

Для возобновления загрузки, вы должны вызвать событие в приложении: didFinishLaunching или после применения перезапущен:

[[SKDownloadManager sharedInstance] tryRestartDownloadsWithDelegate:self andDataSource:self]; 
+0

Спасибо Сильвии за ваш ответ. Любая идея, почему это не включено в документацию? http://developer.skobbler.com/docs/iosTools/2.5.0/Classes/SKTDownloadManager.html –

+0

Мы сделаем это улучшение для следующего обновления SDK - спасибо за предложение – SylviA

2

Для этого вы можете использовать классы AFNetworking. AFNetworkingDownloadclasses

+0

Это, безусловно, будет решением проблемы, однако мне интересно, может ли быть встроенная функциональность от Skobbler/Scout, которую я, возможно, забыл. –