Erro ao fazer upload - Android

E ai Galera. Beleza.

Estou fazendo uma app que faz upload de uma foto para um servidor php, no emulador vai tudo bem, porém quando eu fui rodar no meu Galaxy S não ia.

Depois de muitos testes descobrir que se o arquivo for maior de que 1kb não vai, mas ele não da erro, ele simplesmente fica o resto da vida tentando.

Alguém tem ideia do que pode ser?

Obrigado.

Codigo de upload abaixo.

                String filename = "img.jpg";

		URL connectURL = new URL(url);

		HttpURLConnection conn = (HttpURLConnection) connectURL.openConnection();
		
		conn.setDoInput(true);
		conn.setDoOutput(true);
		conn.setUseCaches(false);
		conn.setRequestMethod("POST");
		conn.setRequestProperty("Connection", "Keep-Alive");
		conn.setRequestProperty("Content-Type", "multipart/form-data;boundary="	+ boundary);

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

		dos.writeBytes(twoHyphens + boundary + lineEnd);
		dos.writeBytes("Content-Disposition: form-data; name=\"Filedata\";filename=\"" + filename + "\"" + lineEnd);
		dos.writeBytes(lineEnd);

		bytesAvailable = in.available();

		bufferSize = Math.min(bytesAvailable, maxBufferSize);

		byte[] buffer = new byte[bufferSize];

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

		while (bytesRead > 0) {
			dos.write(buffer, 0, bufferSize);
			bytesAvailable = in.available();
			bufferSize = Math.min(bytesAvailable, maxBufferSize);
			bytesRead = in.read(buffer, 0, bufferSize);
		}

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

		in.close();
		
		dos.flush();
		dos.close();
		
		DataInputStream din = new DataInputStream(conn.getInputStream());
        
		String str;
		
		StringBuilder b = new StringBuilder();
       
                while (( str = din.readLine()) != null) {
        	    b.append(str);
                }
        
		din.close();