0
,網絡請求在1
或2
在下面的代碼執行:okhttp - 當使用<code>OkHttp</code>執行()與主體()的字節流
val response = client.newCall(request).execute() // (1)
if (response.isSuccessful) {
val bs = response.body().byteStream() // (2)
val bitmap = BitmapFactory.decodeStream(bs)
} else { ... }
我一直認爲我在(1)
執行,其中有必要問一下答案是否成功。但是,今天我決定實現this official recipe跟蹤要下載的文件的進度。
然後我意識到,如果我刪除線(response.body().byteStream()
),進度計數器不動彈。從理論上講,我們不下載任何東西,除了我們要不什麼success
意味着在這種情況下。
對不起,如果這是一個虛擬的問題,我相信這裏有一些非常重要的關於我在這裏失蹤的網絡,我想了解更多。 我試圖理解爲Okio
庫的源代碼,但它是一個有點複雜對我來說,我需要一些參考和指導。
感謝@Jesse!這很有道理。兩個後續問題,我必須關閉流或okhttp爲我做?你推薦哪些資源來更多地瞭解這個主題。再次感謝 – feresr
是的,總是關閉響應主體。 OkHttp wiki和HTTP規範就是最好的資源。 –