Загрузить изображения с вероятностным искажением по ohttp - PullRequest
0 голосов
/ 07 января 2019

Когда я загружаю файл по okhttp, используйте следующий способ

версия: com.squareup.okhttp3: okhttp: 3.12.0

OkHttpClient.Builder clientBuilder = new OkHttpClient.Builder();   
OkHttpClient okHttpClient = clientBuilder.build();
MultipartBody.Builder builder = new MultipartBody
        .Builder()
        .setType(MultipartBody.FORM);
for (int i = 0; i < fileList.size(); i++) {
        File file = new File(fileList.get(i));
        builder.addFormDataPart(path, path, 
        RequestBody.create(MediaType.parse("application/octet-stream"), file));
}
RequestBody body = builder.build();
final Request request = new Request.Builder()
        .url(upLoadUrl)
        .post(body)
        .build();
okHttpClient.newCall(request).enqueue(new Callback() {})

и я получаю ответ в методе onResponse ()

Фоновый сервер не выполняет никакой обработки изображения, просто возвращает ссылку.

Иногда картинки, которые я получаю, полны, а иногда искажены.

Как это:

enter image description here

Мой метод использования неправильный?

Я также делаю MediaType MediaType.parse ("image / *") или MediaType.parse ("image / png") или MediaType.parse ("image / jpeg"), также не работает.

1 Ответ

0 голосов
/ 28 января 2019

Я нашел решение, просто напишите объект okhttpclient как синглтон.

...