我要找的建議,來處理iPhone應用程序(iOS9/Swift2/Xcode7)網絡連接問題,提供最好的用戶體驗,因爲我們知道,移動數據網絡是最好的方式不可靠的。我有我的編碼選項,但我想知道其他有經驗的技術人員的工作情況。這裏有很多信息,但沒有什麼我可以找到特定於在發生連接失敗時發生的策略。IOS網絡連接失敗的政策建議
這是我對付失敗的連接基本策略,我想實現(與問題):
- 應用程序發送請求api.myserver.com,請求失敗
- 等待X秒(S)和嘗試要求再次api.myserver.com(多少次嘗試,並在什麼時間間隔你會建議?)
- 嘗試ping一些其他的服務器(即google.com),看看我們是否可以訪問其他資源比api.myserver.com
- 如果我們可以ping google.com然後w Ë知道我們的互聯網是工作,所以如果這最後ping失敗然後我們提醒,我們不能因爲某種原因通信,並稍後再試
我使用蘋果技術,這在一般意味着你隨時檢查您的服務器的連接首先,使用可達性作爲一個獨立的檢查,以保證手機的硬件可推薦this SO answer列出的理念。
在過程中如果可以訪問是假,則我們會把我們的請求隊列中的這個過程中隨時可以再次嘗試恢復手機硬件連接時。
我想我已經得到了所涉及的代碼手柄,但尋找像見解:「這是什麼工作對我們的應用程序,並給出了在連接問題的良好的用戶體驗......,並獲准在蘋果應用應用商店...」。我理解在出現故障時嘗試/重試連接並提醒用戶(目前我的代碼已成功執行此操作)的概念,但仍然不適用於我應該嘗試重新連接多次的良好策略以及間隔?