2012-05-12 13 views
0

私はクラウドベースのアンドロイドアプリを作っています。私は自分のアンドロイドアプリから私のサーバーに時折データを送信しなければなりません。ソケットは、同じネットワークに接続された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(); 
     } 
    } 
} 

助けてください。

答えて

0

ルーターやファイアウォールが接続をブロックしている可能性はありますか?まだ実行していない場合は、ルーターに入り、ポート54321をサーバーを実行しているPCに転送します。また、Wiresharkをつかんで、携帯電話からの接続要求を探します。

これが役に立ちます。

関連する問題