Uploading data raise issue
<p>I develop one app in which i can send audio,video and image from sdcard to server but there are some problem are raise :: i use HTTP with POST(<strong>vb.net web-services</strong>). can you guide me what is the mistake ??</p>

<p><a href="http://coderzheaven.com/2011/08/uploading-audio-video-or-image-files-from-android-to-server/" rel="nofollow"><h2>i got hint form here ::</h2></a> </p>

<pre><code>package com.upload;

import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;

import android.app.Activity;
import android.content.Intent;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.provider.MediaStore;
import android.util.Log;



public class HttpFileUploader extends Activity {
    private static final int SELECT_AUDIO = 2;
    String selectedPath = "";

    @Override

        public void onCreate(Bundle savedInstanceState) {

            super.onCreate(savedInstanceState);

            setContentView(R.layout.main);
            openGalleryAudio();

        }

public void openGalleryAudio(){

        Intent intent = new Intent();
            intent.setType("audio/*");
            intent.setAction(Intent.ACTION_GET_CONTENT);
            startActivityForResult(Intent.createChooser(intent,"Select Audio "), SELECT_AUDIO);

       }
public void onActivityResult(int requestCode, int resultCode, Intent data) {
            if (resultCode == RESULT_OK) {
                if (requestCode == SELECT_AUDIO)
                {
                    System.out.println("SELECT_AUDIO");
                    Uri selectedImageUri = data.getData();
                    selectedPath = getPath(selectedImageUri);
                    System.out.println("SELECT_AUDIO Path : " + selectedPath);
                    doFileUpload();

               }



            }

        }
public String getPath(Uri uri) {

            String[] projection = { MediaStore.Images.Media.DATA };

            Cursor cursor = managedQuery(uri, projection, null, null, null);

            int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);

            cursor.moveToFirst();

            return cursor.getString(column_index);

        }


private void doFileUpload(){

            HttpURLConnection conn = null;

            DataOutputStream dos = null;

            DataInputStream inStream = null;

            String lineEnd = "\r\n";

            String twoHyphens = "--";

            String boundary =  "*****";

            int bytesRead, bytesAvailable, bufferSize;

            byte[] buffer;

           int maxBufferSize = 1*1024*1024;

            String responseFromServer = "";

            String urlString = "http://193.169.1.20/WebServices/Service.asmx/PutImage";

            try

            {

             //------------------ CLIENT REQUEST

            FileInputStream fileInputStream = new FileInputStream(new File(selectedPath) );

             // open a URL connection to the Servlet

             URL url = new URL(urlString);

             // Open a HTTP connection to the URL

             conn = (HttpURLConnection) url.openConnection();

             // Allow Inputs

             conn.setDoInput(true);

             // Allow Outputs

             conn.setDoOutput(true);

             // Don't use a cached copy.

             conn.setUseCaches(false);

             // Use a post method.

             conn.setRequestMethod("POST");

             conn.setRequestProperty("Connection", "Keep-Alive");

             conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded;boundary="+boundary);

             dos = new DataOutputStream( conn.getOutputStream() );

             dos.writeBytes(twoHyphens + boundary + lineEnd);

             dos.writeBytes("Content-Disposition: form-data; name=\"uploadedfile\";filename=\"" + selectedPath + "\"" + lineEnd);

             dos.writeBytes(lineEnd);

             // create a buffer of maximum size

             bytesAvailable = fileInputStream.available();

            bufferSize = Math.min(bytesAvailable, maxBufferSize);

             buffer = new byte[bufferSize];

             // read file and write it into form...

             bytesRead = fileInputStream.read(buffer, 0, bufferSize);

             while (bytesRead &gt; 0)

             {

              dos.write(buffer, 0, bufferSize);

              bytesAvailable = fileInputStream.available();

              bufferSize = Math.min(bytesAvailable, maxBufferSize);

              bytesRead = fileInputStream.read(buffer, 0, bufferSize);

             }

             // send multipart form data necesssary after file data...

             dos.writeBytes(lineEnd);

             dos.writeBytes(twoHyphens + boundary + twoHyphens + lineEnd);

             // close streams

             Log.e("Debug","File is written");

             fileInputStream.close();

             dos.flush();

             dos.close();

            }

            catch (MalformedURLException ex)

            {

                 Log.e("Debug", "error: " + ex.getMessage(), ex);

            }

            catch (IOException ioe)

            {

                 Log.e("Debug", "error: " + ioe.getMessage(), ioe);

            }

            //------------------ read the SERVER RESPONSE

            try {

                  inStream = new DataInputStream ( conn.getInputStream() );

                  String str;



                  while (( str = inStream.readLine()) != null)

                  {

                       Log.e("Debug","Server Response "+str);

                  }

                  inStream.close();



            }

            catch (IOException ioex){

                 Log.e("Debug", "error: " + ioex.getMessage(), ioex);

            }

          }

    }
</code></pre>
