0

我正在制作一个基于云的 android 应用程序,其中我必须不时将数据从我的 android 应用程序发送到我的服务器。当我使用 USB 电缆在手机上测试我的应用程序时,插座工作良好,两者(计算机和手机)都连接到同一个网络。当我通过在我的计算机上运行服务器和在手机上运行应用程序来测试应用程序时,两者都通过同一个路由器连接,出现了一些问题并且没有建立连接。当应用程序在调试模式下连接的电缆正常工作时,我无法弄清楚为什么会发生这种情况。我为我的套接字创建了一个应用程序的子类,以在任何活动中获取套接字。我的客户端代码如下。

package augID.main;

import java.io.IOException;
import java.net.Socket;
import java.net.UnknownHostException;

import android.app.Application;
import android.util.Log;

public class socketApp extends Application {

    public static String serverIpAddress = "172.16.83.3";
    public static int REDIRECTED_SERVERPORT = 54321;
    public Socket socket;

  public void onCreate(){
        createConnection();   
  }
  public void createConnection(){
      Log.d("Client", "Connection");
      try {
            socket = new Socket(serverIpAddress, REDIRECTED_SERVERPORT);
            Log.d("Client", "Connection to server made");
         } catch (UnknownHostException e1) {
             Log.d("server","could not connect");
            e1.printStackTrace();
         } catch (IOException e1) {
             Log.d("server","could not connect");
            e1.printStackTrace();
         }
  }
}

任何帮助,将不胜感激。

4

1 回答 1

0

您的路由器或防火墙是否可能阻止连接?如果您还没有这样做,请进入您的路由器并将端口 54321 转发到运行服务器的 PC。此外,抓住 Wireshark 并从您的手机中查找连接请求。

希望这可以帮助。

于 2012-05-12T22:27:51.843 回答