簡體   English   中英

如何最好地處理iOS應用程序中沒有互聯網連接

[英]How best to deal with no internet connection in iOS app

我正在開發一個管理調查的應用程序。 它在設備上存儲盡可能多的數據,但是在應用程序中有一些點,如果用戶沒有Internet連接,那么用戶就沒有意義。 因此,如果用戶已成功登錄一次,他們的詳細信息將從本地SQLlite數據庫中提取,則會跳過登錄屏幕,他們會直接進入他們可以選擇回答的調查菜單。 如果他們已經完成了一項調查,他們可以選擇編輯他們的答案。 此時,調查問題應該已經存在於設備的本地數據庫中,但我需要從服務器下載所有答案,以防他們使用其他設備對其進行修改。 當然,如果他們想要開始新的調查,我需要檢索問題。 如果他們沒有互聯網連接,他們需要在那時停止。 我顯示一個對話框,通知他們沒有Internet連接,應該稍后再試。 這一切都很好。 如果用戶有Internet連接,我也會顯示類似的對話框,但是主機是未達到的,但是在對話后我該怎么辦? 在Android中我可以在他們關閉對話框時退出應用程序,但Apple不贊成強制關閉應用程序,那么我該如何在iOS設備上執行操作? 只是希望用戶最終離開並做其他事情?

您可以在對話框中創建一個重試按鈕,嘗試重新建立連接。

或者您可以設置NSTimer以在設定的持續時間內檢查連接。 這似乎是最可行的,因為它將允許用戶繼續編輯他們的調查。

我可能會提供UIAlertView或用戶無法解雇的某種模式,然后一旦Reachability或任何機制報告連接再次可用,就以編程方式解除警報/模態。

退出用戶的應用程序是非常突然的,可能會從AppStore中拒絕您的應用程序。

編輯:

最終,聽起來你要做的就是阻止他們繼續進行調查,不一定阻止他們使用應用程序。 聽起來你只需要一個“分段”區域/視圖,告訴他們發生了什么以及為什么他們現在不能進行任何調查。 看看其他需要永遠連接的應用程序,例如Pandora,Netflix,Hulu等......當您在AirPlane模式下打開應用程序或在使用時殺死WiFi時會發生什么?

給出這種情況我認為如果你在退出前放置一個對話框,Apple將不會拒絕你的應用程序。

像“服務器無法訪問,這個應用程序無法正常運行。應用程序現在將關閉。謝謝你,祝你有愉快的一天!”

如果二進制文件被拒絕,您可以嘗試解釋這種情況。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM