안녕하세요 안드로이드를 공부하고있는 학생입니다.

현재 갤러리 이미지 선택시 서버측컴퓨터에다 저장하는 기능을 만들고있습니다.

현재 Multipartrequest 라는걸 이용해 사진을 전송하는 법까지 만들었습니다

그런대 문제는 현재 사진 이미지를 저장하는게 비교적 느린편이라 이렇게 질문을 올리게됬습니다

현재 사진 이미지 선택후 서버측 컴퓨터에 전송되는 시간은 대략 4~5초 정도 걸리는데

여기서 좀더빠르게 할수있는 방법이 있는가요..?

아 혹시 몰라서 전송하는 부분을 올리겠습니다..


 FileInputStream mFileInputStream = new FileInputStream(fileName);  
                           URL connectUrl = new URL("urlString);
                           Log.d("Test", "mFileInputStream  is " + mFileInputStream);
                          
                           // open connection
                           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);
                          
                           // write data
                           DataOutputStream dos = new DataOutputStream(conn.getOutputStream());
                           dos.writeBytes(twoHyphens + boundary + lineEnd);
                           dos.writeBytes("Content-Disposition: form-data; name=\"uploadedfile\";filename=\"" + fileName+"\"" + lineEnd);
                           dos.writeBytes(lineEnd);
                          
                           int bytesAvailable = mFileInputStream.available();
                           int maxBufferSize = 1024;
                           int bufferSize = Math.min(bytesAvailable, maxBufferSize);
                          
                           byte[] buffer = new byte[bufferSize];
                           int bytesRead = mFileInputStream.read(buffer, 0, bufferSize);
                          
                           Log.d("오류", "image byte is " + bytesRead);
                          
                           // read image
                           while (bytesRead > 0) {
                            dos.write(buffer, 0, bufferSize);
                            bytesAvailable = mFileInputStream.available();
                            bufferSize = Math.min(bytesAvailable, maxBufferSize);
                            bytesRead = mFileInputStream.read(buffer, 0, bufferSize);
                           }
                          
                           dos.writeBytes(lineEnd);
                           dos.writeBytes(twoHyphens + boundary + twoHyphens + lineEnd);
                          
                           // close streams
                           Log.e("오류" , "File is written");
                           mFileInputStream.close();
                           dos.flush(); // finish upload...  
                          
                           // get response
                           int ch;
                           InputStream is = conn.getInputStream();
                           StringBuffer b =new StringBuffer();
                           while( ( ch = is.read() ) != -1 ){
                            b.append( (char)ch );
                           }
                           String s=b.toString();
                           Log.e("오류", "result = " + s);
                           dos.close();  
                          
                          } catch (Exception e) {
                           Log.d("오류", "exception " + e.getMessage());
                           // TODO: handle exception
                          }


대략 이런식으로 작성되어있고 쓰레드를 통하여  전송되게 만들었습니다