I am using MultiPartRequester class for multipart image upload to server, but i found that some part is deprecated in this. for example HttpConnectionParams , getConnectionM
public class MultiPartRequester {
private Map map;
private AsyncTaskCompleteListener mAsynclistener;
private int serviceCode;
private HttpClient httpclient;
private Activity activity;
private AsyncHttpRequest request;
public MultiPartRequester(Activity activity, Map map,
int serviceCode, AsyncTaskCompleteListener asyncTaskCompleteListener) {
this.map = map;
this.serviceCode = serviceCode;
this.activity = activity;
// is Internet Connection Available...
if (AndyUtils.isNetworkAvailable(activity)) {
mAsynclistener = (AsyncTaskCompleteListener) asyncTaskCompleteListener;
request = (AsyncHttpRequest) new AsyncHttpRequest().execute(map
.get("url"));
} else {
showToast("Network is not available!!!");
}
}
class AsyncHttpRequest extends AsyncTask {
@Override
protected String doInBackground(String... urls) {
map.remove("url");
try {
HttpPost httppost = new HttpPost(urls[0]);
httpclient = new DefaultHttpClient();
HttpConnectionParams.setConnectionTimeout(httpclient.getParams(), 80000);
MultipartEntityBuilder builder = MultipartEntityBuilder
.create();
for (String key : map.keySet()) {
AppLog.Log(key, map.get(key));
builder.addTextBody(key, map.get(key), ContentType
.create("text/plain", MIME.UTF8_CHARSET));
}
httppost.setEntity(builder.build());
ActivityManager manager = (ActivityManager) activity
.getSystemService(Context.ACTIVITY_SERVICE);
if (manager.getMemoryClass() < 25) {
System.gc();
}
HttpResponse response = httpclient.execute(httppost);
String responseBody = EntityUtils.toString(
response.getEntity(), "UTF-8");
return responseBody;
} catch (Exception e) {
e.printStackTrace();
} catch (OutOfMemoryError oume) {
System.gc();
Toast.makeText(
activity.getParent().getParent(),
"Run out of memory please colse the other background apps and try again!",
Toast.LENGTH_LONG).show();
} finally {
if (httpclient != null)
httpclient.getConnectionManager().shutdown();
}
return null;
}
@Override
protected void onPostExecute(String response) {
if (mAsynclistener != null) {
mAsynclistener.onTaskCompleted(response, serviceCode);
}
}
}
private void showToast(String msg) {
Toast.makeText(activity, msg, Toast.LENGTH_SHORT).show();
}
public void cancelTask() {
request.cancel(true);
// System.out.println("task is canelled");
}
}