Donc je travaille avec retrofit 2 qui utilise okhttp dessous. L'extrait de code ci-dessous fonctionne, mais j'obtiens des erreurs d'OOM pour les gros fichiers. Je crois que c'est parce que je lis le fichier à un tableau d'octets.Quelle est la bonne façon de télécharger de gros fichiers encodés Base64 avec retrofit?
Quelle est la méthode recommandée pour cela?
private void appendFileContentsToBody(Attachment attachment, MultipartBody.Builder requestBodyBuilder) throws IOException {
File file = new File(attachment.getAbsolutePath());
if(file.exists()){
RequestBody attachmentPart = RequestBody.create(null, Base64.getEncoder().encode(FileUtils.readFileToByteArray(file)));
requestBodyBuilder.addPart(Headers.of("X-Filename", attachment.getFilename()), attachmentPart);
}
}