Oryginalnie myślałem, że jeśli NSURLSessionDownloadTask
zakończy się pomyślnie, to zostanie wywołana metoda URLSession:downloadTask:didFinishDownloadingToURL:
, jeśli z jakiegoś powodu zawiedzie - URLSession:task:didCompleteWithError:
. Działa zgodnie z oczekiwaniami na symulatorze (tylko jedna z tych metod jest wywoływana dla jednego zadania pobierania), ale na urządzeniu tak nie jest: w przypadku niepowodzenia obie metody są wywoływane, URLSession:downloadTask:didFinishDownloadingToURL:
jest pierwszą. (obie te metody przechodzą to samo zadanie w parametrach)Obsługa błędu NSURLSessionDownloadTask
Czy jest coś, czego mi brakuje?
Zauważyłem to samo zachowanie w tym, że DidFinishDownloadingToURL jest wywoływane obok didCompleteWithError. To spowodowało dla nas ogromne problemy. Jak sobie z tym poradziłeś? – RunLoop
lokalizacja może być w tym przypadku pusta. Czy możesz to sprawdzić? – AsifHabib