ネットワークを利用したiPhoneアプリを開発しています。iPhone は HTTP リクエストを介してサーバーと通信し、WiFi と 3G で動作するはずです。
現在NSURLConnection initWithRequest
、サーバーに非同期リクエストを送信して応答を取得するために使用しています(ただし、すぐにASIHTTPRequest
ライブラリでの作業に移行します)
この種のアプリ (インターネット接続が必要なアプリ) では、Reachability を使用する必要がある (しなければならない) ことを理解しました。
Web を検索し、Apple の Reachability のサンプル コードを見た後でも、いくつかの基本的なことを理解していません。
到達可能性の主な目的は何ですか?
Apple の例では、ホスト、WiFi、および 3G に関するネットワークの問題を検出し、ユーザーに適切なメッセージを表示します。
ユーザーにメッセージを表示することが到達可能性の主な目的ですか? それとも、他のより実用的なシナリオで使用する必要がありますか? たとえば、NSURLConnaction
リクエストが失敗した場合、Reachability を使用してリクエストを再送信する必要がありますか?
到達可能性の適切な使用法は何ですか?
アプリの起動時に1 つのインスタンスのみを使用し、ネットワークの変更をリッスンするのは一般的ですか? または、すべてのネットワーク リクエストの前に到達可能性ステータスを確認する必要がありますか?
使用するだけで十分ですか、それともreachabilityWithHostName
必要ですか? reachabilityForLocalWiFi
reachabilityForInternetConnection
もう1つ、アップルはネットワークを使用し、到達可能性を使用しないアプリを拒否できることを理解しました。
実装する必要がある「必須」のメソッドは何ですか?
現在インターネットがないことをユーザーに通知するだけで十分でしょうか?