2012-02-25 86 views
0

假設我有一個應用程序從網絡獲取數據,然後在應用程序中顯示這些數據。但有時互聯網會斷開連接,所以我會顯示'互聯網不可用'的信息。但我想讓用戶忙於應用程序。所以我想要做下面的事情,但是實施中存在一些問題。連接和斷開網絡故障排除

1)當網絡斷開連接時我想顯示消息'網絡斷開連接',並且我想將所有數據存儲在數據庫中。 問題:如何知道網絡不可用,而又沒有發生任何事件?

2)當網絡連接時,我想獲取數據並存儲在緩衝區中。 問題:同樣,我將如何知道網絡現在可用?

回答

1

這是很常見的問題,最好用Reachability類來解決。

你可以找到一個很好的手冊在這裏:Testing Network Reachability

和快速的答案是公認的答案在這裏:

iPhone reachability checking

但要知道,這是最好的檢查主機availabiility。當設備連接到AdHoc WiFi(沒有互聯網連接)時,我測試了這個代碼,結果是:通過WiFi可以上網。所以如果你想確定 - 使用主機狀態。

編輯:這可能是對SO最好的例子(回答iWasRobbed):

How to check for an active Internet connection on iOS or OSX?