OkHttps 并沒有把文件的下載排除在常規(guī)的請求之外,同一套API,它優(yōu)雅的設(shè)計(jì)使得下載與常規(guī)請求融合的毫無違和感,一個最簡單的示例:
http.sync("/download/test.zip")
.get() // 使用 GET 方法(其它方法也可以,看服務(wù)器支持)
.getBody() // 得到報文體
.toFile("D:/download/test.zip") // 指定下載的路徑
.start(); // 啟動下載
或使用異步連接方式:
http.async("/download/test.zip")
.setOnResponse((HttpResult result) -> {
result.getBody().toFile("D:/download/test.zip").start();
})
.get();
這里要說明一下:sync
與async
的區(qū)別在于連接服務(wù)器并得到響應(yīng)這個過程的同步與異步(這個過程的耗時在大文件下載中占比極?。?,而start
方法啟動的下載過程則都是異步的。
如果覺得 OkHttps 好用,就去點(diǎn)個 Star 吧,項(xiàng)目地址:
更多建議: