2014-12-05 177 views
0

我有Apache服務器在本地主機上運行,​​而我的android應用程序在同一個WiFi網絡上,並有我的電腦IP地址來定位服務器,該應用程序可以連接和發送消息。但是,如果我從應用程序中的WiFi切換到4G,則無法再連接到服務器併發送消息。Android應用程序無法通過4G連接到本地主機

應用程序內的服務器地址:

Global ipAddress = new Global(); 
    private final String AUTHENTICATION_SERVER_ADDRESS = "http://" 
      + ipAddress.getIpAddress() + ":4430/BackendDatabase/"; 

public String sendHttpRequest(String params) { 
     URL url; 
     String result = new String(); 
     try { 
      url = new URL(AUTHENTICATION_SERVER_ADDRESS); 
      HttpURLConnection connection; 
      connection = (HttpURLConnection) url.openConnection(); 
      connection.setDoOutput(true); 
     ...etc 

應如何服務器不同的配置,以使手機在本地網絡中,而不是發送和接收消息?

回答

0

無法使用4G連接到本地主機,因爲它們不在同一個網絡中。你應該使用wifi而不是 。並且在使用wifi時,您應該使用您的計算機的IP而不是localhost127.0.0.1您必須使用例如192.168.1.2(您的計算機的IP),如果您使用模擬器,則應使用10.0.2.2作爲IP地址進行連接。

+0

我問的是現在我的應用程序工作,我想移動到手機4G而不是隻是WiFi。我如何配置服務器以允許這樣做? – Sauron 2014-12-05 06:02:36

+0

如果有幫助,請接受我的回答。 因此,你應該有你的服務器的靜態IP地址,你不能訪問你的電腦沒有靜態IP通過4G。 – 2014-12-05 11:37:56

+0

因此,我應該設置一個服務器不在本地主機,但亞馬遜託管另一個? – Sauron 2014-12-05 12:43:44

相關問題