2

私のアプリケーションでは、ReST Web サービスから JSON データをダウンロードしています。ほとんどの場合、これで問題なく動作しますが、接続がタイムアウトになることがあります。

これは、タイムアウトを設定するために使用するコードです...

HttpConnectionParams.setConnectionTimeout( httpParameters, 20000 );
HttpConnectionParams.setSoTimeout( httpParameters, 42000 );

接続がタイムアウトすると、アプリケーションがクラッシュして終了します。タイムアウトを処理するにはどうすればよいですか?

4

3 に答える 3

6

HttpClient クラスは ConnectTimeoutException 例外をスローするため、リッスンする必要があります。

try {
        HttpResponse response = client.execute(post);
                    // do something with response
    } catch (ConnectTimeoutException e) {
        Log.e(TAG, "Timeout", e);
    } catch (SocketTimeoutException e) {
        Log.e(TAG, " Socket timeout", e);
    }
于 2013-08-05T09:27:13.650 に答える
0

さまざまな種類の例外をキャッチしようとしましたが、IOException のキャッチが思いどおりに機能することがわかりました。

于 2013-08-05T09:55:11.100 に答える