0

アプリ用の JSON データベース接続があり、アプリの初回起動時にロード (更新) するように設定されています。JSON データは電話に保存され、アプリの再起動時にインターネット接続が検出されない場合に取得できます。つまり、そこには常にデータが存在します。

ユーザーのインターネットへの接続が遅い場合 (3G 未満の場合など)、アプリはハングします。データベースを保存された情報に戻すタイムアウトを設定したいと思います (まったく接続がない場合と同様)。残念ながら、間違った関数でタイムアウトを設定すると、アプリがクラッシュする可能性があると思います。

接続速度を決定するために公開されているクラスがないことを読みましたが、誰かが代替案を提案できますか?

4

1 に答える 1

0

NSURLRequest を使用している場合は、タイムアウトを設定できます。タイムアウトを処理するコールバックでは、データのローカル コピーにフォールバックできます。別のユーザーから提供された次の回答を確認してください。

実際の接続速度を判断したい場合は、アプリに固定長の任意のデータをダウンロードさせ、完了するまでにかかった時間を記録することができます。ただし、これには独自の欠陥があります。これを行う時期と頻度を決定する必要があります。また、解決しようとしている問題に悩まされることもあります。また、たとえば、ユーザーが電車に乗っていた場合、接続が良好な瞬間もあれば、次の瞬間は弱くなる場合もあります。タイムアウト ソリューションは問題なく機能すると思います。これは、アプリがデータのローカル コピーに戻る前に、ユーザーが一定期間待機する必要があることを意味します。

于 2013-06-09T22:36:15.867 に答える