2011-10-26 19 views
5

私のマシン上でAndroidデバイスから実行しているサーバーに(TCP経由で)接続しようとしています。 は、私は私のマニフェストファイルのandroid.permission.INTERNETていますAndroid Socket:java.net.SocketException:ホストへのルートがありません

<uses-permission android:name="android.permission.INTERNET"></uses-permission> 

私はエミュレータを使用して接続することができていますが、デバイスからしようとすると、エラーがスローされます。
Android Socket: java.net.SocketException: No route to host

誰も助けてください。

+0

デバイスからどのようにコンピュータにアクセスしますか? Wi-FiまたはUSBでどのIPを使用してAndroidからコンピュータに接続しますか? – Idolon

+0

こんにちは、私はWIFIを使用しています。 IPアドレスはipconfig:IPv4アドレスを使用して取得したものです。 。 。 。 。 。 。 。 。 。 。 :192.168.1.114 –

+0

たとえば、あなたのコンピュータで起動したWebサーバー(あなたの電話機のブラウザを使用して)にアクセスできますか?そうでない場合は、ネットワーク構成上の問題であり、プログラミング上の問題ではありません。 – Idolon

答えて

5

192.168.1.114のアドレスは、ルーターによってPCに割り当てられた(動的に)DHCPアドレスです。その結果、エミュレータに表示されます。

あなたのWiFiがどのように設定されているかによって、Androidはおそらく別のルータ/サブネットにあり、192.168.1.114を見ることはできません。 Androidブラウザのアドレスバーに192.168.1.114と入力して確認できます。

Androidに192.168.1.114が表示されない場合は、ルーターのルーティングルールを変更して表示するか、DNSルックアップを追加する必要があります。

0

私は同じ問題がありました。 Win7ファイアウォールが接続をブロックしていたことが判明しました。

13

Android搭載端末でWi-Fiを無効にしてから再度有効にしても機能しました。

+0

ありがとうございます。私は私のために働いた。 –

+0

も私のために働いた...私のアプリがネットワークを失ったときに何が起こるかを試そうとしていたので、もう一度やり直すことができたのでルータを停止してから再起動してからこの問題が発生した。モバイルWi-Fi –

関連する問題