こんにちは私は既にこの質問をしましたが、今回はすべての証明書が問題を引き起こさないようにその方法をチェックします。Android - 定期的にHttpClientのタイムアウトが発生する
iPhoneにもあるアプリを開発しています。問題はAPIリクエストにあります。すべてのリクエストのタイムアウトを設定しました。ときには、30〜60秒の間にちょっとした休憩が起こることもあります。これは、アプリケーションがカップルのリクエストを行い、ブレークよりも、約45秒後にすべての時間がタイムアウトするように見える。
これはサーバーの問題かAndroidかどうかわかりません。
この問題は、IOS 5とiPhone上で発生するだけでなく、私はHttpClientをしても、FOTのHttpsURLConnectionをチェック
IOS 4につくれていません。
接続はhttpsで、直接IPアドレスを試していました。
すべての要求に同じ問題があり、すべての要求が非同期タスクにあります。
すべての彼らは同じになります:
DefaultHttpClient client = new HttpSupport().getNewHttpClient();
client.getCredentialsProvider().setCredentials(new AuthScope(AuthScope.ANY_HOST,AuthScope.ANY_PORT),new UsernamePasswordCredentials(user, pass));
HttpGet httget = new HttpGet("xxxxxxxxxxxxxxxxxxxxxxx");
httget.setHeader("Accept", "application/json");
HttpResponse respond = null;
try
{
respond = client.execute(httget);
}
catch (ClientProtocolException e)
{
Log.e(TAG,"getEvents, ClientProtocolException");
}
catch (IOException e)
{
Log.e(TAG,"getEvents, IOException: " + e.getMessage());
}
私HttpSupportクラスDORコードは、私の前の質問である:Android - API Requests
これは、サーバーの障害することができますか? ありがとうございました。
最近、私はappがclient.executeでハングしていることに気付きました。このようにしてみてください:android httpclient hangs on second request to the server (connection timed out)、しかし助けにはならないでしょう。たぶんapiの不具合ではありませんが、Androidはそのままです。このアプリは本当に頻繁にAPIを指していますが、ほとんどのリクエストで大丈夫です。
まだ30-45秒のハングアップを取り除くことはできません。
今日私は再びアプリをテストし、エラーは3.2のSamsungタブレットのwi-fi接続でのみ発生することに気付きました。 2.3.7(wi-fiと3g)のWildfireでは、すべてが問題ないようです。モバイルで問題が発生しているとは言えませんが、テスト中にタイムアウトに気づいていません。
時間については確かですか? Wi-Fiでデバイスを使用していても、apiからのユーザーが0,5秒未満のすべての応答を送信しても、この問題が発生します。 – goodm
問題は100%ではありませんが、直面する可能性があるすべての接続シナリオでは短すぎます。しかし、そういうわけで、私はフィドラーと一緒に走ることをお勧めします - それはあなたの問題を特定するのに役立ちます。 – peterept
残念ながら、タイムアウトを変更しても問題は解決しませんが、待ち時間が長くなります。 – goodm