当通过套接字连接到PC时,手机中的Android-App停止了

时间:2012-11-23 08:27:57

标签: java android sockets

我使用我的电脑作为服务器,只需构建一个套接字。 在客户端源代码中,我只构建一个连接到pc的套接字。但是,当我在手机中打开应用程序时,它显示应用已停止...我已将Internet的权限添加到项目中。

服务器

public class Server extends Thread{
    private Socket client;

    public Server(Socket c){
        this.client = c;
    }


    public void run(){
        try{    
            //System.out.println("Start!");
            BufferedReader in = 
                    new BufferedReader(new InputStreamReader(client.getInputStream()));
            PrintWriter out = new PrintWriter(client.getOutputStream());
            while(true){
                String str = in.readLine();
                System.out.println(str);
                out.println("has receive...");
                out.flush();
                if(str.equals("end"))
                    break;
            }
            client.close();

        }
        catch(IOException ex){
        }finally{
        }
    }

    public static void main(String[] args) throws IOException{
        ServerSocket server = new ServerSocket(2345);
        System.out.println("Start!");       
        while (true){
            Server sv = new Server(server.accept());
            sv.start();
        }
    }
}

客户端:

public class MainActivity extends Activity {


    Socket socket;
    DataInputStream dis;
    DataOutputStream dos;

    private TextView tv;
    private Button bt;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        tv = (TextView) findViewById(R.id.TextView1);
        bt = (Button) findViewById(R.id.button1);
        bt.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                try{
                    socket = new Socket("155.69.149.221",2345);
                    tv.setText("Connected!");
                }catch(IOException ioe){

                }

            }
        });

    }



}

0 个答案:

没有答案