2012-05-04 5 views
2

データ同期を使用するアプリの開発。低速のインターネット接続で画像を送信すると(サイズを変更しても)時間がかかります。考えてみると、最初にインターネット速度をチェックするのが最善で、速度が許容できる場合にのみデータを送信します。 Apple Reachabilityクラスがありますが、Wi-Fiがオンかどうかを確認する方法しかありません。私は私のために、ホストにpingを実行し、ping cmdの結果から遅延情報を取得するだけで十分だろうと考えています。私が決定するために使用する遅延情報は、今すぐデータを送信するか、または待機する価値があります。これはかなり複雑ですこうホストにpingを実行して遅延する可能性はありますか?

+1

待ち時間=帯域幅、本当に必要なのはpingですか?しかし、そうであれば、これは助けになるかもしれません:http://stackoverflow.com/questions/7437643/ios-ping-with-timeout – ckhan

答えて

1

到達可能かpingが送信されますどのくらいの速やファイルを遅らせるあなたを教えてくれません。これはping_time +(file_size/bandwidth)の関数です。大きなファイルの場合、ping_timeはfile_size/bandwidthよりもはるかに小さくなります。

これを測定する最も簡単な方法は、あまりにも小さいファイルではないサイズのファイルをダウンロードしてアップロードし、実際にアップロード速度とダウンロード速度が「十分に速い」かどうかを判断することです。

+0

良い点、ありがとう:) – Centurion

1
+0

これはiOS上では動作しません。 ' - (無効)simplePing:(SimplePing *)ピンガーのdidReceivePingResponsePacket:(NSDataの*)パケットれるsequenceNumber:(uint16_t)sequenceNumber'も、Info.plistファイルに' ' NSAppTransportSecurity NSAllowsArbitraryLoadsを追加した後、呼ばれることは決してありません。 – Jaybo

関連する問題