0

ネットワーク経由でスレッドに情報をロードしようとしています。インターネットがない場合、例外が発生する前に長時間フリーズするか、フリーズします。

// FREEZES HERE のタイムアウトを設定する方法はありますか、またはインターネットがない場合に例外を通過するのに長い時間がかかりますか? タイムアウトを設定する方法はありresponse = httpclient.execute(httppost);ますか?

HttpClient httpclient = new DefaultHttpClient();
HttpPost  httppost = new HttpPost("http://besttechsolutions.biz/projects/bookclub/getevents.php");
// FREEZES HERE or takes a long time to through exception when there is no internet
response = httpclient.execute(httppost);
responseBody = EntityUtils.toString(response.getEntity());
4

1 に答える 1

0

以下を試してください。

HttpParams httpParameters = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParameters, 30000);
HttpConnectionParams.setSoTimeout(httpParameters, 30000);

if(null == httpClient) 
httpClient = new DefaultHttpClient(httpParameters);

上記のコードは通常、httpClient のデフォルトのタイムアウトを設定します。インターネット アクセスを確認するには、Nomand が投稿したリンクを参照してください。

于 2013-03-12T17:30:43.050 に答える