2012-05-12 42 views
0

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

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(); 
     } 
    } 
} 

任何帮助,将不胜感激。

回答

0

您的路由器或防火墙是否可能阻止连接?如果您尚未完成此操作,请进入您的路由器并将端口54321转发给运行服务器的PC。另外,抓住Wireshark并寻找手机的连接请求。

希望这会有所帮助。