Skip to content

File Download with OkHttp

withContext(Dispatchers.IO) {
val client = OkHttpClient()
val request = Request.Builder()
.url("https://skills-music-api-v2.eliaschen.dev/audio/ocean.mp3")
.build()
val response = client.newCall(request).execute()
response.use {
it.body?.byteStream()?.use { input ->
File(context.getExternalFilesDir(null), "hello.mp3").outputStream()
.use { output ->
input.copyTo(output)
}
}
}
}