画像を webService にアップロードしようとしていますが、アップロードできませんでした。ここやインターネットで多くのトピックを検索しましたが、適切な解決策が見つかりませんでした。
このコードを実行すると、Bad Request エラーが発生します。
更新: このリンクにあるいくつかのコードを使用しました: Uploading MS Word files from Android to .Net WCF?
しかし、私に FileNotFoundException を与えますが、私のファイルパスは次のとおりです:/mnt/sdcard/ImageDir/images/ilan_1360917248037__thumb_.jpeg
これが私が試している私のコードです:
public static String imgUpload(String url, List<NameValuePair> list, List<String> images){
String result = Constants.EMPTY;
Bitmap bm;
HttpParams httpParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParams, ServiceConstant.TIMEOUT_MILLISEC);
HttpConnectionParams.setSoTimeout(httpParams, ServiceConstant.TIMEOUT_MILLISEC);
HttpParams p = new BasicHttpParams();
HttpClient httpclient = new DefaultHttpClient(p);
HttpPost httppost = new HttpPost(url);
String resimYol = images.get(0);
resimYol = resimYol.replace("file:///", "/");
bm = BitmapFactory.decodeFile(resimYol);
Log.d("RESIL_YOL", resimYol.toString());
try{
ByteArrayBody bab = new ByteArrayBody(b, resimYol);
ResponseHandler<String> responseHandler = new BasicResponseHandler();
ByteArrayOutputStream bos = new ByteArrayOutputStream();
bm.compress(CompressFormat.JPEG, 100, bos);
byte[] data = bos.toByteArray();
ByteArrayBody bab = new ByteArrayBody(data, resimYol);
MultipartEntity reqEntity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
httppost.setEntity(reqEntity);
result = httpclient.execute(httppost,responseHandler);
}
catch (Exception e) {
// handle exception here
Log.e(e.getClass().getName(), e.getMessage());
}
return result;
}
これが私のlogcatです:
02-12 11:43:07.467: E/org.apache.http.client.HttpResponseException(19112): Bad Request