2012-11-19 77 views
2

我有一個iOS應用程序,我需要每週下載60-70個視頻,每個視頻大小3-8MB。 問題是,我該如何下載這些視頻? 我將視頻和網址列表存儲在數據庫中。如何在iOS中下載多個背景視頻?

可能的解決方案:

使用UIBackgroundTaskIdentifier,一旦應用程序啓動調用beginBackgroundTaskWithExpirationHandler。該任務將下載一個視頻。
endBackgroundTask我會將該特定視頻標記爲已下載。
這裏的問題是,我可以啓動多個UIBackgroundTaskIdentifier? 我應該從哪裏開始?在AppDelegate中?特定的控制器? 如果我在一個特定的控制器上啓動它,在viewDidLoad()如果應用程序退出將會發生什麼?

請指導我或提供備用解決方案。 感謝

+0

解決方案A聽起來不錯,那麼您的解決方案B是什麼?有解決方案B,對嗎?不再支持 – Raptor

回答

5

使用AFNetworking作爲ASIHTTPRequestdeprecated

請參閱AFNetworking source鏈接。

另請參閱afnetworking-downloading-multiple-files鏈路和Does AFNetworking have backgrounding support鏈接。

編輯:開始AppDelegate

檢查AFDownloadRequestOperation爲可恢復的下載下載。

參考afnetworking-pause-resume-downloading-big-files using AFDownloadRequestOperation鏈接。

+0

感謝您的答覆,我也想知道,你在哪裏調用這個函數?在AppDelegate中還是在特定的控制器中?另外,如果應用程序在下載完成之前退出,會發生什麼情況? 謝謝 – manishKungwani

+0

檢查編輯答案...... –

+0

真棒,我幾乎在那裏,最後一個問題? 我必須下載多個文件,所以我要做的是有一個for循環,並使用上面的解決方案之一開始下載每個文件,使用上述解決方案之一,或任何其他解決方案的錯誤? 再次感謝 – manishKungwani

2

您可以在後臺下載與ASIHTTPRequest多個文件。請參閱文檔here

請注意,ASIHTTPRequest不再工作,所以你可以使用AFNetworking

AFNetworking是爲iOS和Mac OS . It's built on top of NSURLConnection的,的NSOperation , and other familiar基金會technologies`一個愉快的網絡庫。它具有模塊化的體系結構,設計精良,功能豐富的API,使用起來很愉快。

找到SDK here

+0

ASIHTTPRequest:http://allseeing-i.com/ASIHTTPRequest/ – CarlJ

+0

感謝您的幫助:) – manishKungwani