1

Android: 次の方法でインターネットからファイルをダウンロードしています。

InputStream in = null;
try {
    in = connection.getInputStream();
} catch (IOException e) {
    e.printStackTrace();
}
byte[] buffer = new byte[1024];
int length = 0;
try {
    while ((length = in.read(buffer)) != -1) {
        try {
            fout.write(buffer, 0, length);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
} catch (IOException e) {
    e.printStackTrace();
}
try {
    fout.close();
} catch (IOException e) {
    e.printStackTrace();
}
try {
    in.close();
} catch (IOException e) {
    e.printStackTrace();
}

問題は、インターネットがオフになると、一部のデバイスで read inoutstream が読み取りを停止しても、他のデバイスでは引き続き読み取りを行うことです! この問題を解決するには?前もって感謝します。

編集: 解決策が見つかりました。接続のタイムアウトを設定する必要があります。

4

1 に答える 1

1

接続を確立するときは、それをに入れて、try-catch接続の確立が失敗するかどうかを確認します。ブロックで問題を処理しますcatch。接続を確立する方法が正確にわからないため、これ以上提案することはできません。

于 2012-08-22T14:51:46.477 に答える