我想在下載時播放音樂,因此我使用本地文件播放音樂,如何在使用NSURLSession下載時在tmp目錄中獲取文件路徑。使用NSURLSession下載時獲取文件路徑
的方法URLSession:downloadTask:didFinishDownloadingToURL:不僅僅是打電話,而文件下載,所以我應該怎麼辦
我想在下載時播放音樂,因此我使用本地文件播放音樂,如何在使用NSURLSession下載時在tmp目錄中獲取文件路徑。使用NSURLSession下載時獲取文件路徑
的方法URLSession:downloadTask:didFinishDownloadingToURL:不僅僅是打電話,而文件下載,所以我應該怎麼辦
就像什麼@馬特說,在下載結束你可以什麼都不做,除了等待之前。 但是您可以考慮使用AudioStreamer在下載時播放音樂。
如果您想獲取下載文件的位置,請不要使用下載任務。例如,創建一個NSURLSessionDataTask
並將其自動流式傳輸到永久存儲器(例如,爲持久存儲中的本地文件創建自己的NSOutputStream
並打開它,然後在didReceiveData
中,將數據寫入流中,然後關閉流全做完了)。然後你可以做任何你想要的流/文件。如果使用AFNetworking,我相信AFHTTPRequestOperation
也會爲此目的公開outputStream
屬性。
謝謝,這很有用 – user1187117 2014-11-05 09:29:53
AFNetworking 3刪除'AFHTTPRequestOperation'。如果你正在使用AFNetworking 3,你將不得不在'AFHTTPSessionManager'上使用'setDataTaskDidRecieveDataBlock:'方法來執行上面描述的@Rob。 – keithbhunter 2016-03-28 13:47:06
嘿我沒有找到方法'didReceiveData',請你告訴我在哪裏我會得到的方法謝謝。 – 2016-09-09 06:07:12
爲什麼在下載結束之前需要知道路徑?下載結束前,沒有文件,也沒有路徑。你的問題沒有意義。 – matt 2014-11-05 01:38:15
音樂已聯機,所以我想在播放之前緩存部分數據 – user1187117 2014-11-05 02:21:49
然後您無法使用下載任務。 – matt 2014-11-05 04:27:25