0

サーブレットにgetリクエストを送信しようとしていますが、モバイルデータ接続を使用しているときにタイムアウト例外が発生し続けます

java.net.SocketException:操作がタイムアウトしました

電話のモバイルデータ接続を使用している場合、ブラウザでWebを閲覧できるため、データバンドルではなく、コードはWi-Fi接続で問題なく機能します。

タイムアウトを1000000ミリ秒のようなものに設定しようとしましたが、それでも例外が発生します。誰か助けてもらえますか?

これが私が使っているコードです

            HttpParams httpParameters = new BasicHttpParams();
            HttpConnectionParams.setConnectionTimeout(httpParameters, 1000000 );
            HttpConnectionParams.setSoTimeout(httpParameters, 1000000 );
            HttpConnectionParams.setTcpNoDelay(httpParameters, true);
            HttpClient httpclient = new DefaultHttpClient(httpParameters);
            HttpResponse response = null;
            Log.d(TAG, "" + id[0]);


            response = httpclient.execute(new HttpGet(
                    "http://192.168.1.10:8080/serv/request?id=" + id[0]));
            Log.d(TAG, response.toString());
            Log.d(TAG, "status" + response.getStatusLine());
4

1 に答える 1

1

URI(http://192.168.1.10:8080/serv/request?id=)から、ローカルLANのサーバーにアクセスしようとしているように見えます。したがって、サーバーがローカルLANにあり、インターネットからアクセスできない場合は、モバイルデータ接続を使用してサーバーに接続することはできません...

サーバーはどこでホストされていますか?サーバーはインターネットでアクセスできますか?モバイルデータ接続を使用してサーバーにアクセスするには、サーバーに静的IPが必要です。

于 2013-01-01T14:33:26.010 に答える