2017-06-09 85 views

回答

0

使用NSURLSession直接下載文件。這正是Safari在引擎蓋下所使用的。

+0

感謝您的回答。但我想讓Safari管理整個下載過程(默認存儲路徑,暫停和恢復等)。 – Jonny

+0

這沒有API。另外,在應用程序之間跳躍用戶太多是不好的用戶體驗。 -openURL:用於完全將控制交給另一個應用程序。它並不打算成爲編寫正確下載代碼的捷徑,因此沒有「下載完成」回調。您可以使用NSSearchPathForDirectoriesInDomains()獲取當前下載文件夾,並使用NSURLSession下載並恢復。 – uliwitness

0
NSURL *url = [NSURL URLWithString:@"https://...../video.mp4"]; 
NSURLRequest *urlRequest = [NSURLRequest requestWithURL:url]; 
NSURLSessionConfiguration *sessionConfig = [NSURLSessionConfiguration defaultSessionConfiguration]; 
NSURLSession *urlSession = [NSURLSession sessionWithConfiguration:sessionConfig delegate:self delegateQueue:nil]; 
self.downloadTask = [self.urlSession downloadTaskWithRequest:downloadRequest]; 
[self.downloadTask resume];