Я пытаюсь сделать HTTP POST на сервер с помощью Retrofit 2.0
MediaType MEDIA_TYPE_TEXT = MediaType.parse("text/plain");
MediaType MEDIA_TYPE_IMAGE = MediaType.parse("image/*");
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
imageBitmap.compress(Bitmap.CompressFormat.JPEG,90,byteArrayOutputStream);
profilePictureByte = byteArrayOutputStream.toByteArray();
Call<APIResults> call = ServiceAPI.updateProfile(
RequestBody.create(MEDIA_TYPE_TEXT, emailString),
RequestBody.create(MEDIA_TYPE_IMAGE, profilePictureByte));
call.enqueue();
Сервер возвращает ошибку о том, что файл недействителен.
Это странно, потому что я пытался загрузить тот же файл в том же формате на iOS (используя другую библиотеку), но он успешно загружен.
Мне интересно, как правильно загрузить изображение с помощью Retrofit 2.0?
Должен ли я сохранить его на диск перед загрузкой?
PS: Я использовал модификацию для другого запроса Multipart, который не включает изображение, и они успешно завершены. Проблема в том, когда я пытаюсь включить байт в тело.