현재 안드로이드로 FTP 서버에 접속하여 파일을 업로드하고 그 속도를 측정하는


어플을 개발중입니다. 기본적으로 안드로이드에 익숙치 못하여 우선 자바에서 실행하여


테스트해보고 안드로이드로 옮기는 과정에 있습니다만,


자바에서는 문제없이 원활히 진행되었는데 안드로이드로 옮기는 과정에 문제가 있는듯해보입니다.


기본적으로 소스코드에는 오류가 없지만 막상 실행하려 해보면,


Attempting to connect debugger to 'A.F333' on
port 8601


이라는 메시지가 뜨면서 웨이팅디버거가 걸리면서 멈춰버립니다.


실행자체를 에뮬로 돌리지 않고 단말기로 돌렸습니다.


이와 같은 문제가 왜 발생하며, 혹시 해결방안을 아시는 분이 계신다면 방법을 가르켜 주시면


정말 정말 감사하겠습니다. 아래는 풀소스입니다



import android.app.Activity;
import android.os.Bundle;
import
android.view.View;
import android.os.Environment;
import
android.widget.Button;
import android.widget.TextView;
import
android.content.Context;
import android.content.Intent;
import
android.content.IntentFilter;
import java.util.List;
import
java.io.*;
import java.io.File;
import java.io.FileInputStream;
import
java.net.SocketException;
import java.io.IOException;
import
java.io.InputStream;
import org.apache.commons.net.ftp.FTP;
import
org.apache.commons.net.ftp.FTPClient;
import
org.apache.commons.net.ftp.FTPReply;


public class F333 extends Activity {
    /** Called when the activity is
first created. */
String server="ftp.imrc.kist.re.kr";
int port=20;
String
id="gre_kist";
String password="gre1003";
FTPClient
ftpClient;

public F333(String server,int port,String id,String
password){
  this.server=server;
  this.port=port;
  this.id=id;
  this.password=password;
  ftpClient=new
FTPClient();
}

public void
connect(){
  try{
   ftpClient.connect(server,port);
   ftpClient.enterLocalPassiveMode();
   int
reply;
   reply=ftpClient.getReplyCode();
   if(!FTPReply.isPositiveCompletion(reply)){
    ftpClient.disconnect();
    System.out.println("서버로부터
연결을
거부당했습니다");
    textview.append("연결거부");
    System.exit(1);
   }else{
    System.out.println("connect==>"+ftpClient.getReplyString());
   }
  }catch(IOException
ioe){
   if(ftpClient.isConnected()){
    try{
     ftpClient.disconnect();
    }catch(IOException
e){
    
    }
   }
   System.out.println("서버에
연결할수없습니다.");
   textview.append("서버에연결할수없습니다.");
   System.exit(1);
    }
   }

public
boolean login(String id,String
password){
  try{
   this.connect();
   System.out.println("login==>"+ftpClient.getReplyString());
   return
ftpClient.login(id, password);
  }catch(IOException
ioe){
   ioe.printStackTrace();
  }
  return
false;
}
 
public void cd(String
path){
  try{
   ftpClient.changeWorkingDirectory(path);
  }catch(IOException
ioe){
   ioe.printStackTrace();
  }
}

public File upload(String upFile){
  File uploadFile=new
File(upFile);
  FileInputStream fis=null;
 
  try{
   fis=new
FileInputStream(uploadFile);
   boolean
isSuccess=ftpClient.storeFile(uploadFile.getName(),fis);
  
   if(isSuccess){
    System.out.println("업로드성공");
    textview.append("로그인실패");
 
   
   }else{
    System.out.println(ftpClient.getReplyString()+"::"+isSuccess);
   }
  }catch(IOException
ioe){
   System.out.println(ioe.getMessage());
  }finally{
   if(fis!=null){
    try{
     fis.close();
    }catch(IOException
ioe){
    }
   }
  
  return  null;
  }
 
}
private
TextView textview;
    @Override
    public void onCreate(Bundle
savedInstanceState) {
        super.onCreate(savedInstanceState);
       
setContentView(R.layout.main);
       
        final F333 myFtp=new
F333("ftp.imrc.kist.re.kr",21,"gre_kist","gre1003");
       

        textview =(TextView)findViewById(R.id.TextView01);
        Button
btn=(Button)findViewById(R.id.Button01);
       
       
       
btn.setOnClickListener(new View.OnClickListener() {
         public void
onClick(View v){
          //textview.append("FTP Connect...");
       
  myFtp.connect();
       
  if(myFtp.login(myFtp.id,myFtp.password)){
           double start =
System.currentTimeMillis();
           myFtp.cd("/");
       
   myFtp.upload("c:\\ice.png");
           double end =
System.currentTimeMillis();
           double
result=0.3/((end-start)/1000);
           System.out.println("Download
succeed.. BPS :" + result+"MBPS");
           textview.append("Download
succeed.. BPS :" + result+"MBPS");

          }else{
           System.out.println("로그인실패입니당!");
       
   textview.append("로그인실패");
          }
         
         
  

    }
        });
       
       
}