2016-07-18 66 views
0

如果基本的通話將一些數據發佈到使用NSURLSession服務器(在這種情況下使用Alamofire)呼叫開始在前臺應用程序,而呼叫正在進行該應用程序正在移動到後臺並被暫停。當應用程序回到前臺時,正在進行的通話會發生什麼?它是否超時(應用程序使用默認的60秒ephemeralSessionConfiguration)還是會收到一些其他錯誤?如果超時尚未達到,呼叫仍在等待或操作系統終止了它?我有默認的背景模式,沒有請求沒有背景時間。試圖調試在現場發生的問題。當你的應用程序被暫停超時前景開始,但應用程序轉移到後臺

回答

0

您的網絡請求暫停。所以基本上的答案是,它取決於服務器在應用程序處於後臺時是否放棄,以及內核中的套接字是否在應用程序暫停時放棄。

通常,如果您需要在應用程序處於後臺時移動數據,則應該使用後臺會話和下載或上載任務。這樣,實際的數據傳輸發生在一個單獨的過程中(不會被暫停),您的應用程序將獲取數據。這就是說,使用後臺會話基本上與使用短暫配置相沖突,因爲它涉及將數據存儲在磁盤上。所以,如果你真的需要某種原因短暫的配置,用戶點擊home鍵後,並沒有多少,只要你能做些什麼,你正在做的請求短暫地你的應用程序的要求很可能只是失敗的幾秒鐘。

相關問題