2008-11-10 38 views
2

我正在編寫帶有圖片上傳功能的應用程序。現在我正在使用NSURL POST:125306在後臺上傳iPhone圖片

當應用程序關閉,據我可以告訴所有的上傳中止和線程死亡。有沒有

1)當應用程序不再處於前臺時,使這些上載線程持續存在的方法?

2)一個iPhone操作系統服務,它將接受排隊作業並以OS管理的模式運行它的請求?

回答

9

編輯:這是從2009年的舊答案。當前的iOS(2016)具有後臺URL任務。請參閱NSURLSessionUploadTask。

原來的答覆如下:

你不允許在iPhone上的後臺運行(按照蘋果的指導方針)。如果你這樣做,你的應用程序將被拒絕從AppStore。

+0

爲了聽起來更正確,它不是我們不被允許(如果我們可以,但我們可以),但即使我們想要,我們也不能。這是不可能的開發一個應用程序的iPhone將在後臺運行。 – 2009-10-31 05:04:04

4

由於已經有很好的文檔記錄,所以沒有後臺進程可以使用SDK。

1

如上所述,您不能擁有後臺進程 - 一個很好的折衷辦法是將照片大小調整爲可在合理時間內傳輸的大小(用戶可配置爲最佳),並顯示活動指示符某種類型的用戶會知道上傳正在進行中。

一個更好的解決方案是調整大小,並提供進度指示器給出當前上傳的百分比 - 但涉及一些自定義的低級HTTP代碼。

0

應用暫停後,您只有約10分鐘的時間來完成這項工作。 當應用程序暫停時,您應該創建後臺進程線程。 而且你沒有任何操作系統會保持應用程序的活力。這取決於流程的複雜性。