StackTips

Upload image to a web service using HttpURLConnection

stacktips avtar

Written by

Editorial,  1 min read,  2.78K views, updated on Sept. 17, 2023

The following code snippet can be used to upload an image to web service in Android. After getting a Bitmap object from the camera or other source, you can compress the create an HttpURLConnection and attach the image to the request body.

try {
	URL url = new URL(SERVER_POST_URL);
	HttpURLConnection c = (HttpURLConnection) url.openConnection();
	c.setDoInput(true);
	c.setRequestMethod("POST");
	c.setDoOutput(true);
	c.connect();

	OutputStream output = c.getOutputStream();
	bitmap.compress(CompressFormat.JPEG, 50, output);
	output.close();

	Scanner result = new Scanner(c.getInputStream());
	String response = result.nextLine();
	Log.e("ImageUploader", "Error uploading image: " + response);

	result.close();
} catch (IOException e) {
		Log.e("ImageUploader", "Error uploading image", e);
}