繁体   English   中英

Android 客户端应用程序未连接到 PC 上的服务器

[英]Android client app not connecting to a server on pc

我有以下问题......我正在编写一个系统,它由服务器端组成 - 在我的电脑上和我可爱的 ​​Xperia(又名 Android 手机)上的客户端。 问题是,当我尝试通过客户端应用程序将手机绑定到电脑时,logcat 显示:

  failed to connect to /*xxx.xxx.x.xxx (port 2002): connect failed: ETIMEDOUT (Connection timed out)

*这是我的IP地址,它以192开头...

实际上,我在客户端使用了 try - catch,在 try 中我设置了套接字,但问题是该进程失败了,我猜,在 catch 块中正确创建套接字时...我正在运行两者我家 Wi-Fi 热点上的设备。 正如我所说,我使用套接字,这可能意味着我的连接类型是 TCP (? :) )。 请为此提出某种解决方案,因为我在论坛(也在这里)继续阅读的内容越多,我就越感到困惑。

剪下我的代码:

  public class ClientSide extends AsyncTask<String, Void, String>{

protected String doInBackground(String... params){

    final String SERVER_HOSTNAME = "xxx.xxx.x.xxx";
    final int SERVER_PORT = 2002;
    BufferedReader mSocketReader;
    PrintWriter mSocketWriter;
    final String TAG = ClientSide.class.getSimpleName();
    String data="";
    String outputln = "Me. Android";

    try {
        Socket socket = new Socket(SERVER_HOSTNAME, SERVER_PORT);
        mSocketReader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
        mSocketWriter = new PrintWriter(new OutputStreamWriter(socket.getOutputStream()));
        System.out.println("Connected to server " + SERVER_HOSTNAME + ":" + SERVER_PORT);

        //Reads from the socket
        data = mSocketReader.readLine();

        //Writes to the socket, a.k.a. sends info
        mSocketWriter.println(outputln);
        mSocketWriter.flush();

    } catch (IOException ioe) {
        System.err.println("Cannot connect to " + SERVER_HOSTNAME + ":" + SERVER_PORT);
        ioe.printStackTrace();

    }

    return data;
}

在此先感谢您,如果您需要更多信息,我会尽力提供。 我是 Android 开发的极端初学者,抱歉我的英语。

*更新:服务器端应用程序是用 java 编写的,也是 6-7 个类的构建,我没有通过 Apache 或任何这些来运行所有这些。 我不想只是测试我的应用程序,我想要通过 wi-fi 进行真正的连接,而不是通过 USB。

试试这个:打开控制面板 -> Windows Defender 防火墙 -> 允许应用程序或功能通过 Windows Defender 防火墙(左侧) -> 检查 Apache HTTP 服务器和 mysqld 的私有和公共网络👍👍👍

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM