1

意味のない URL を入力すると、例外はスローされず、残りのコードは実行されず、接続するメソッドを呼び出した残りの asynctask も実行されません。

try {
        socketCliente.connect(new InetSocketAddress("f", port), 2000);

    } catch (UnknownHostException e) {
        getError("Host doesn't exist");
        return -1;
    } catch (IOException e) {
        getError("Could not connect: The host is down");
        return -1;
    }
4

2 に答える 2

0

別の catch ステートメントを追加します。

catch ( Exception e ) {
    Log.d(TAG, e.getMessage(),e);
    Toast.makeText(getApplicationContext(), "Unexpected Error:" + e.getMessage(), Toast.LENGTH_LONG).show();
}

これはログに書き込まれ、何が起こっているかを知らせるトーストをポップアップ表示します。

于 2013-05-18T12:12:23.770 に答える
0

非常に奇妙です。次のようにさらに 2 行を追加して、何が得られるかを確認してください。

また、ログでは、これら 2 つの行の時間差に注意してください。

try {
    Log.w("SOCKET", "Trying to connect...");
    socketCliente.connect(new InetSocketAddress("f", port), 2000);
    Log.w("SOCKET", "Connected. No exception");

} catch (UnknownHostException e) {
    getError("Host doesn't exist");
    return -1;
} catch (IOException e) {
    getError("Could not connect: The host is down");
    return -1;
}
于 2013-05-19T08:35:43.700 に答える