0

我正在尝试使用Socket. 不幸的是,PC 服务器没有收到来自应用程序的任何连接请求(它们之间没有连接)。我正在 Android 模拟器中运行该应用程序。

我在互联网上看到了很多关于这个问题的教程和讨论,我从字面上理解它们,但仍然遇到我上面提到的同样的问题。

注意:Android 应用在 Eclipse 模拟器上运行,PC 服务器在 Netbeans 上运行

PC服务器源代码:

public class server {

    ServerSocket server;

    public server() {
        try {
            server = new ServerSocket(8000); // create server socket
            Socket socket = server.accept(); // accept new connection request
            System.out.println("The connection is active");
        } catch (IOException e) {
            System.err.println("error.... 1\n");
        }
    }

    public static void main(String[] args) {
        new server();
    }
}

安卓应用源码(客户端):

public class Client extends Activity {

    Button con;
    Socket socket;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        con = (Button) findViewById(R.id.myButton);
        con.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {
                try {
                    socket = new Socket("My_PC_IPAddress", 8000);
                }
                catch (Exception e1) {
                    e1.printStackTrace();
                }
            }
        });

    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }
}

注意:此权限已添加到manifest.xml

<uses-permission android:name="android.permission.INTERNET"/> 

请帮我解决这个问题。

4

1 回答 1

0

1)确保您正确写入PC的IP。

2)尝试关闭您的PC的防火墙。

于 2013-04-11T21:23:05.467 回答