Srs, precisando da ajuda de vocês, estou com esse problema há dias e não consigo resolver…
Tenho um app que se conectar com um servidor http.
Tudo roda direitinho até o usuário estourar o pacote de dados (30mb) contratado e enquanto o usuário não abrir o navegador do tablet e selecionar uma das opções navegar e pagar o excedente ou reduzir a velocidade e continuar navegando as conexões não funcionam.
Abaixo o código do método que apenas checar se o servidor está disponivel.
private boolean servidorDisponivel(String url){
try {
HttpPost httpPost = new HttpPost(url);
HttpParams httpParameters = new BasicHttpParams();
int timeoutConnection = 10000;
HttpConnectionParams.setConnectionTimeout(httpParameters, timeoutConnection);
DefaultHttpClient httpClient = new DefaultHttpClient(httpParameters);
httpClient.execute(httpPost);
return true;
} catch (ParseException e) {
return false;
} catch (IOException e) {
return false;
}
}
At.
Pra ficar mais claro, vou postar o logcat.
O link que apresenta o erro não é o link que estou tentando conectar. Esse link é o que mostra as duas opções no navegador.
Desde já obrigado.
11-14 11:38:40.662: W/System.err(16857): java.net.SocketTimeoutException: failed to connect to www.portal-sva.vivo.com.br/200.220.227.126 (port 80) after 15000ms
11-14 11:38:40.670: W/System.err(16857): at libcore.io.IoBridge.connectErrno(IoBridge.java:150)
11-14 11:38:40.670: W/System.err(16857): at libcore.io.IoBridge.connect(IoBridge.java:112)
11-14 11:38:40.670: W/System.err(16857): at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:192)
11-14 11:38:40.670: W/System.err(16857): at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:459)
11-14 11:38:40.678: W/System.err(16857): at java.net.Socket.connect(Socket.java:842)
11-14 11:38:40.678: W/System.err(16857): at libcore.net.http.HttpConnection.<init>(HttpConnection.java:77)
11-14 11:38:40.678: W/System.err(16857): at libcore.net.http.HttpConnection.<init>(HttpConnection.java:50)
11-14 11:38:40.678: W/System.err(16857): at libcore.net.http.HttpConnection$Address.connect(HttpConnection.java:351)
11-14 11:38:40.678: W/System.err(16857): at libcore.net.http.HttpConnectionPool.get(HttpConnectionPool.java:86)
11-14 11:38:40.678: W/System.err(16857): at libcore.net.http.HttpConnection.connect(HttpConnection.java:128)
11-14 11:38:40.678: W/System.err(16857): at libcore.net.http.HttpEngine.openSocketConnection(HttpEngine.java:308)
11-14 11:38:40.678: W/System.err(16857): at libcore.net.http.HttpEngine.connect(HttpEngine.java:303)
11-14 11:38:40.686: W/System.err(16857): at libcore.net.http.HttpEngine.sendSocketRequest(HttpEngine.java:282)
11-14 11:38:40.686: W/System.err(16857): at libcore.net.http.HttpEngine.sendRequest(HttpEngine.java:232)
11-14 11:38:40.686: W/System.err(16857): at libcore.net.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:273)
11-14 11:38:40.686: W/System.err(16857): at libcore.net.http.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:479)
11-14 11:38:40.686: W/System.err(16857): at com.trembala.jndistrib.async.AsyncTaskComunicacao.servidorDisponivel(AsyncTaskComunicacao.java:200)
11-14 11:38:40.686: W/System.err(16857): at com.trembala.jndistrib.async.AsyncTaskComunicacao.doInBackground(AsyncTaskComunicacao.java:81)
11-14 11:38:40.686: W/System.err(16857): at com.trembala.jndistrib.async.AsyncTaskComunicacao.doInBackground(AsyncTaskComunicacao.java:1)
11-14 11:38:40.686: W/System.err(16857): at android.os.AsyncTask$2.call(AsyncTask.java:264)
11-14 11:38:40.694: W/System.err(16857): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
11-14 11:38:40.694: W/System.err(16857): at java.util.concurrent.FutureTask.run(FutureTask.java:137)
11-14 11:38:40.694: W/System.err(16857): at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:208)
11-14 11:38:40.694: W/System.err(16857): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
11-14 11:38:40.694: W/System.err(16857): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
11-14 11:38:40.694: W/System.err(16857): at java.lang.Thread.run(Thread.java:856)
Pessoal, consegui resolver uma parte, apenas colocando a linha abaixo no codigo:
O problema está aqui agora.
HttpResponse response = httpClient.execute(httpPost);
String resposta = EntityUtils.toString(response.getEntity());
Nao está devolvendo a resposta da minha pagina e sim do site da operadora (vivo).
Quando utilizo o codigo abaixo para verificar o link, está imprimindo “http://www.portal-sva.vivo.com.br/vivo-captive/?n=‘num.tel’” no logCat.