Ги парни!Android: Что такое лучшая HTTP-библиотека для файлов?
Я работаю над проектом android (java
) с другим парнем, работающим на server-side(php)
. В моей заявке мне нужно позвонить POST
и GET
методам, чтобы upload files to server, download files, send Strings, byte[] array etc
.
Мой вопрос: Что такое лучшая библиотека для использования в моем случае (я думаю, что мои файлы не будут превышать 3mb
)
Я новичок в Android, так что я пытался до сих пор:
1 .Android Asynchronous Http Client
(com.loopj.android:android-async-http:xxx) -мы отказался от этого, потому что это не из "доверенного" источника
2.AsyncTask+HttpClient+HttpPost
-Мы отказался от этого слишком
3.Volley library
-лучших до сих пор (для строк, запрос изображения), но это требует дополнительных библиотек для отправки изображений на сервер (org.apache.httpcomponents:httpmime:4.5
) -I следил за тем, примеры из here но у меня есть исключения, ошибки, ошибки библиотек (дубликатов) и никогда не удалось решить один без другого. -так я дал на это слишком
My question posted for volley library
here
4. Сейчас я думаю об использовании Retrofit
, но не знаю, что это соответствует моим потребностям: -Send строки и все типы примитивных данных -send image/images to server (вместе с Api key
) -нагрузить изображение/изображения с сервера
Скажите, если я где-то ошибаюсь или пропустил что-то, работая с указанными выше библиотеками. Мне удалось отправить простые данные со всеми этими, но мне не удалось отправить Files
(кроме библиотеки loopj
).
Как вы думаете, вернусь ли я к Volley
, или начнем читать о Retrofit
? Volley
кажется наиболее гибким, но не для uploading files
.
Любые рекомендации или советы приветствуются! Заранее спасибо!
Update: Я нашел возможное решение моей проблемы: -I конвертировать мой файл/изображение в byte array
и encode
его к base64 string
-I отправить строку на сервер в качестве основного StringRequest
с HashMap<String,String>
(с использованием Библиотека волейбола от разработчиков Google) -Сервер расшифровывает строку a сохраняет файл
Пожалуйста, загрузите фрагмент кода, что и упомянутый в разделе Обновления Tanx заранее – Adiii
@Adil Вы можете проверить этот вопрос и следовать ответу для кодирования и декодирования в Base64 http://stackoverflow.com/questions/7360403/base-64-encode-and-decode-example-code, и это для отправки данных с помощью Volley http://stackoverflow.com/questions/36194517/android-send-image-encoded-to-base64-using-volley –
Tanx dear @ Cristian.R – Adiii