2011-11-22 13 views
5

誰もが知っている、または約任意の情報を持って、どのようなモバイルデバイス上でのインターネット接続のための最高のタイムアウト(特にアンドロイド)できれば、私は思っていました。携帯端末の接続に適切なタイムアウトはありますか?

彼らはかなりの遅れとインターネットアクセスが制限されているので、多分それは、デバイスがその特定の瞬間にネットワーク黒点かかわらず行くことができので、(デフォルトの)小さなタイムアウトを設定することは興味深いです。

UPDATE: 私はコメントに言及して、ユーザーが30秒のタイムアウトを待ってから、それが最終的に失敗有することはかなりいらいらすることができるので、これは、私に起こりました。

+0

タイムアウトが小さいですか?あなたはより長いタイムアウトを意味しますか?私にとっては、あなたが持っている悪いつながりがあれば、私はタイムアウトになるだろうと言っても意味がありません。 – aioobe

+0

接続が応答するとユーザーが待機するのを待たずに済むようにします。 30秒間アプリが待っているのを見て、接続が失敗するのはかなりイライラです。 – pablisco

答えて

5

率直に言って私はあなたがいない本当の答え、または答えは「それが依存」である少なくとも一つで質問を求めていると思います。ここで

はあなたがが考慮に入れたい場合がありますいくつかのものです:

  • 可能な限り、バックグラウンドでのインターネット接続を使用して作業を続けます。そうすれば、ユーザーを待たずに長時間タイムアウトすることができます。うまくいけば、これは明白です!
  • はどのようにひどく/データを送信するユーザーが取得したいですか?それが重要であるほど、彼らは待つ準備が長くなるでしょう。したがって、ビジネスデータをアップロードしているビジネスアプリは、ハイスコアを出しているゲームよりもずっと長いタイムアウトを使用する可能性があります。
  • モバイル接続(すなわち、2G/3G)を使用する場合のWi-Fiを使用した場合よりも性能の低い期待があります。それを考慮に入れたいかもしれません。
  • モバイルでは、信号強度が問題になる可能性があります。繰り返しますが、これはあなたが考慮してもいいかもしれません。
  • あなたは常に、ユーザーがタイムアウト自身の長さを設定してみましょうことができ...

あなたは、私がどこかでタイムアウトを見ていると思い、何をやってからユーザーをブロックしていると仮定すると、言ったことすべて10-20秒の領域。その数字は、開発者としてのユーザーとしての私の経験に基づいています。

+0

ありがとう、素晴らしい答え。主な問題は、他のものを簡単にバッチ処理してサービスで行うことができるので、フェッチ操作では明らかですが、問題が発生する可能性がある詳細を検索またはロードしているときです。 私は、最良の解決策は、ネットワーク信号を監視し、通常よりも長くかかるか、失敗する可能性があると考えています。しかし、電話の状態のアクセス許可を追加する必要があります。そのため、ユーザーの信頼には最適ではありません。/ – pablisco

2

ウェブページにアクセスしている場合、通常は10-30秒のタイムアウトが一般的な方法であり、json apiにアクセスする場合は、JSONのデータサイズが通常JSONでは5秒または10秒という小さなタイムアウト値よりも適切です応答。 JSON APIのタイムアウトを小さくすると、ユーザーは待機時間を短縮できます。

あなたが言ったように、ユーザーが30秒待ってから最後に失敗するのは面倒かもしれません。モバイルデバイスの場合、問題はネットアクセスがないことです。失敗すると早くなるほど良くなり、ユーザーの再試行のオプションが与えられます。

私のアプリでやっていることは、ネットワーク状態を監視して10秒のタイムアウトを設定していて、まだ失敗した場合、30秒待ってから失敗するようにデータを再読み込み/

は最後にBaquetaはどのようにそれがすべての状況に依存していることを上記の回答でも説明したように。

関連する問題