2017-10-26 17 views
1

원격 URL에서 로컬 URL로받은 데이터를 캐시해야합니다. 나는 성공적으로이 작업을 수행 할 수 있어요 :Swift에서 Data.write (? : URL)의 진행 상태를 관찰 하시겠습니까?

let dataToCache = try Data(contentsOf: url) try dataToCache.write(to: cacheURL)

그러나 일부 관찰자의 종류 나 데이터가 기록 된대로 진행보기를 표시하는 데 사용할 수있는이 있는지 궁금 해서요?

답변

1

Data(contentsOf: url)을 사용하여 로컬 리소스가 아닌 URL을 요청하지 마십시오. 당신은 당신이 urlsessiondownloaddelegate에게 https://developer.apple.com/documentation/foundation/urlsessiondownloaddelegate를 설정하고 진행 상황을 모니터링 할 필요가 진행 상황을 관찰 .TO URLSession를 사용해야하는 방법

func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didWriteData bytesWritten: Int64, totalBytesWritten: Int64, totalBytesExpectedToWrite: Int64) 

https://developer.apple.com/documentation/foundation/urlsessiondownloaddelegate/1409408-urlsession

+1

완벽한, 감사를 사용합니다. –