2016-05-19 2 views
1

Das Problem ist, was der Titel sagte. Es kommt nur manchmal und ein Telefon vor. Hören ist der Baumstamm, den ich gefangen habe.Verwenden Sie OkHttp, um die Datei hochzuladen, aber auftreten java.lang.IllegalStateException: geschlossen bei okio.RealBufferedSink.write (RealBufferedSink.java:44)

java.lang.IllegalStateException 
closed 
okio.RealBufferedSink.write(RealBufferedSink.java:44) 
okio.ForwardingSink.write(ForwardingSink.java:35) 
com.******.******.network.UploadRequestBody$1.write(UploadRequestBody.java:75) 
okio.RealBufferedSink.emitCompleteSegments(RealBufferedSink.java:176) 
okio.RealBufferedSink.writeAll(RealBufferedSink.java:104) 
com.squareup.okhttp.RequestBody$3.writeTo(RequestBody.java:118) 
com.squareup.okhttp.MultipartBuilder$MultipartRequestBody.writeOrCountBytes(MultipartBuilder.java:277) 
com.squareup.okhttp.MultipartBuilder$MultipartRequestBody.writeTo(MultipartBuilder.java:297) 
com.******.******.network.UploadRequestBody.writeTo(UploadRequestBody.java:59) 
com.squareup.okhttp.internal.http.HttpEngine$NetworkInterceptorChain.proceed(HttpEngine.java:718) 
com.squareup.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:576) 
com.squareup.okhttp.Call.getResponse(Call.java:287) 
com.squareup.okhttp.Call$ApplicationInterceptorChain.proceed(Call.java:243) 
com.squareup.okhttp.Call.getResponseWithInterceptorChain(Call.java:205) 
com.squareup.okhttp.Call.access$100(Call.java:35) 
com.squareup.okhttp.Call$AsyncCall.execute(Call.java:171) 
com.squareup.okhttp.internal.NamedRunnable.run(NamedRunnable.java:33) 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) 
java.lang.Thread.run(Thread.java:848) 

Würde es Ihnen etwas ausmachen, mir zu helfen und zu sagen, wie ich es vermeiden kann?

+0

Sieht aus wie ein Fehler. Welche Version von OkHttp benutzt du? –

+0

Schließen Sie den Stream, an den Sie schreiben? –

+0

Ich habe 2.7.5 verwendet und ich habe nicht die Close-Funktion aufgerufen. :( –

Antwort

0

Das finde ich bei Github issue

Sie nur response.body().string() einmal anrufen können.

Verwandte Themen