Android — Apache Mime и httpClient

Я пытаюсь отправить файл на сервер с помощью HttpEntity.

HttpEntity mpEntity = MultipartEntityBuilder.create().addBinaryBody("file", file, ContentType.create("image/jpeg"), file.getName()).build();

Однако, чтобы использовать это, мне нужно импортировать библиотеки пантомимы в мой проект. Когда в моем gradle.build я добавляю:

    compile 'org.apache.httpcomponents:httpmime:4.3.4'

Я получаю следующие предупреждения об ошибках, которые приводят к тому, что библиотеки не импортируются:

WARNING: Dependency org.apache.httpcomponents:httpclient:4.3.4 is ignored for debug as it may be conflicting with the internal version provided by Android.
     In case of problem, please repackage it with jarjar to change the class packages

Любые идеи, что мне нужно сделать, чтобы я мог успешно импортировать эти библиотеки?


person frek13    schedule 28.07.2014    source источник
comment
Что, если вы создадите приложение в режиме выпуска?   -  person Aleksander Lidtke    schedule 28.07.2014
comment
К сожалению, происходит то же самое.   -  person frek13    schedule 28.07.2014


Ответы (1)


Создание с помощью gradle из командной строки поможет.

 ./gradlew installDebug

Затем вы увидите, что подсказка, которую дал Android Studio, является только предупреждением:

ПРЕДУПРЕЖДЕНИЕ. Зависимость org.apache.httpcomponents:httpclient:4.3.4 игнорируется для моментального снимка, поскольку она может конфликтовать с внутренней версией, предоставляемой Android. В случае проблемы переупакуйте его с помощью jarjar, чтобы изменить пакеты классов.

--- Вот еще кое-что на случай, если вы столкнетесь с другой проблемой, связанной с apache-http ---

В моем случае мне пришлось добавить некоторые параметры упаковки из-за ошибки с плагином android-gradle:

android {
    packagingOptions {
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/NOTICE.txt'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE.txt'
    }
}

Для получения дополнительной информации об этом просмотрите этот билет ->https://stackoverflow.com/questions/20673625/android-gradle-plugin-0-7-0-duplicate-files-during-packaging-of-apk.

person Ostkontentitan    schedule 02.09.2014