1

次のエラーが表示されます。

03-17 02:10:13.272: W/System.err(26433): java.io.EOFException
03-17 02:10:13.282: W/System.err(26433):    at     libcore.io.Streams.readFully(Streams.java:83)
03-17 02:10:13.282: W/System.err(26433):    at     java.util.zip.ZipInputStream.getNextEntry(ZipInputStream.java:231)

外部ストレージへの書き込み権限が設定されているバックグラウンド スレッドでダウンロードを実行します。私のコードは次のとおりです。

ZipInputStream zis = null;
try
{
    zis = new ZipInputStream(archive);
    ZipEntry zeCurrent;
    while ((zeCurrent = zis.getNextEntry()) != null)
    {
       [...]
    }
}

この eof はループに入る前に呼び出されるため、ループは 0 回呼び出されます。そこで何が起こっているのですか?

私はjson通信にrestletを使用しています。私のダウンロードコード:

ClientResource cres = new ClientResource(myURL);
cres.setRequestEntityBuffering(true);
Representation response = request.post(new JacksonRepresentation<MyRequest>(MediaType.APPLICATION_JSON, request));

unzip(response.getStream(), downloadPath);

したがって、MyRequest は json を表す my Object であり、downloadPath が存在します。

4

0 に答える 0