1

NSURLSessionDownloadTask를 사용하여 서버에서 파일을 다운로드합니다.이 파일은 백그라운드 세션에서 실행됩니다. 앱이 종료되면 다시 시작하기 위해 이력서 데이터를 저장하고 싶습니다. 그러나 cancelByProducingResumeData를 호출하면 항상 null이 반환됩니다. 내가 전에 재개 가능한 다운로드 작업의 샘플을 수행하는 데 사용했기 때문에 문제를 파악할 수 없습니다. 아무도 같은 문제가 있습니까?NSURLSessionDownloadTask cancelByProducingResumeData return null

답변

4

요청이 cancelByProducingResumeData 방법에 대한 설명서에 설명 된 기준을 충족하는지 알고 있습니까?

다운로드는 다음과 같은 조건이 충족되는 경우에만 다시 시작할 수 있습니다 : 먼저

  • 작업은 HTTP 또는 HTTPS GET 요청
  • 입니다 그것을 요구하기 때문에

    • 자원은 변경되지 않았습니다 서버가 해당 응답에 ETag 또는 Last-Modified 헤더 (또는 둘 다)를 제공합니다.
    • 서버가 바이트 범위 요청을 지원합니다.
    • t emporary 파일은 디스크 공간의 압력
  • 이미이 간주
    +0

    하지만 모든 조건을 만족하는지 여부하지 않도록에 대한 응답으로 시스템에 의해 삭제되지 않았습니다. Dropbox 공용 폴더에서 파일을 다운로드합니다. 나는 dropbox 서버가 그것들 모두를 지원한다고 생각한다. – LongNV

    +1

    @LongNV [Charles] (http://www.charlesproxy.com)으로 요청을보고 응답의 헤더를 확인할 수 있습니다 ... – Rob

    +0

    이제는 훌륭한 도구를 사용해 주셔서 감사합니다. – LongNV