ファイルアップロード(MultipartEntityBuilder)でNoSuchFieldError

Androidアプリで端末からの画像をアップロードする際に結構ハマったのでメモ。

org.apache.http.entity.mime.MultipartEntityBuilderでUPloadしようとすると「java.lang.NoSuchFieldError: org.apache.http.message.BasicHeaderValueFormatter.INSTANCE」
が発生。

ライブラリはApacheのhttpmime-4.5.jarを使っていたのですがあれこれ調べると「httpclient-android 4.3.5」も必要な感じ。

httpmime-4.5.jarと合わせてAndroidStudioのModule.appに設定。
これでOKかと思ったのですがまたまたエラー。どうやらそれぞれのライブラリの相性が悪いらしくhttpmime-4.5.jarをhttpclient-androidにあわせることに

とりあえず解決。ちなみにAndroidでMultipartEntityBuilderを使ったファイルアップロードはこんな感じ

 

[`evernote` not found]
[`yahoo` not found]