close
以下是這兩天研究的心得,還沒開始研究的可以參考一下,節省大家的時間
 
NSURLSession 是 NSURLConnection 的改良版,iOS7.0 以上才支援,相關文章可參考
 
NSURLSession 底下有一個 subclass 名為 NSURLSessionDownloadTask,便可以達到我們目前所需要的功能,包括啟動下載、取消下載、告訴我們下載進度、以及下載是否完成,相關文件請參考 iOS developer library

如文件中所述,當啟動下載任務時,URLSession:downloadTask:didWriteData:totalBytesWritten:totalBytesExpectedToWrite: 這個 callback 會不斷被呼叫,其中三個參數含意分別是
didWriteData:這次呼叫檔案又多寫入了多少
totalBytesWritten:從啟動到現在檔案總共寫入了多少
totalBytesExpectedToWrite:檔案預計寫入量,也就是總檔案大小

當下載結束時,URLSession:downloadTask:didFinishDownloadingToURL: 這個 callback 便會被呼叫,以便我們做後續的事情。

其中還有一個方法名為 cancelByProducingResumeData:,他可以在中斷下載任務時,讓我們儲存下載到的資料,之後可以在續傳,範例可參考
http://www.88cto.com/996655/article/details/21154.html
 
 
arrow
arrow
    文章標籤
    NSURLSession 下載
    全站熱搜
    創作者介紹
    創作者 Louis Huang 的頭像
    Louis Huang

    Louis的工作筆記

    Louis Huang 發表在 痞客邦 留言(0) 人氣()