リモート データが古い可能性があることをユーザーに警告するために、アプリがフォアグラウンドになるたびに到達可能性チェックを実行したいと考えています。アプリの起動時に 3G または Wi-Fi が適切に初期化されているという事実を信頼できますか? または、「誤検知」を避けるために、到達可能性チェックを遅らせる必要があります。遅らせる必要がある場合、十分な遅延間隔はどれくらいですか?
多分もっと推奨されるアプローチがありますか?
リモート データが古い可能性があることをユーザーに警告するために、アプリがフォアグラウンドになるたびに到達可能性チェックを実行したいと考えています。アプリの起動時に 3G または Wi-Fi が適切に初期化されているという事実を信頼できますか? または、「誤検知」を避けるために、到達可能性チェックを遅らせる必要があります。遅らせる必要がある場合、十分な遅延間隔はどれくらいですか?
多分もっと推奨されるアプローチがありますか?
常に最初に接続を試みてください。失敗した場合にのみ、Reachability を使用してオフラインかどうかを判断し、いつ自動的に再試行する必要があるかを判断する必要があります。
接続を試みると、ネットワークを確認できない方法でネットワークが再アクティブ化される場合があります。
ただし、ネットワークがオンラインになったという Reachability の通知をリッスンしてから再試行することは完全に適切です (まだ試行していない場合)。
明確にするために:
「アプリがフォアグラウンドになるたびに到達可能性チェックを実行したい...」
到達可能性チェックviewDidAppearを置きます:
-(void)viewDidAppear:(BOOL)animated {
// reachability check
}
iOSデベロッパーライブラリでの到達可能性:http://developer.apple.com/library/ios/#samplecode/Reachability/Introduction/Intro.html