que logró ponerlo todo en marcha asyncronously con las dos galletas y https sin firmar.
He utilizado el código aquí:
http://masl.cis.gvsu.edu/2010/04/05/android-code-sample-asynchronous-http-connections/
y modificar para https sin firmar utilizando el código de Brian Yarger aquí:
Self-signed SSL acceptance on Android
(añadir el código anterior al inicio de la carrera () en HttpConnection.java)
Para hacer que las cookies funcionaran, tuve que modificar algunos códigos (P fragmento OST de HttpConnection.java):
case POST:
HttpPost httpPost = new HttpPost(url);
httpPost.setEntity(new StringEntity(data));
httpPost.addHeader("Cookie", Cookie.getCookie());
response = httpClient.execute(httpPost);
Header[] headers=response.getAllHeaders();
for(int i=0;i<headers.length;i++){
if(headers[i].getName().equalsIgnoreCase("Set-Cookie")){
//Log.i("i",headers[i].getName()+"---"+headers[i].getValue());
Cookie.setCookie(headers[i].getValue());
break;
}
}
break;
Muchas gracias a todos por mí apuntando en la dirección,
Hola, muchas gracias por su respuesta. Está funcionando bien. Sin embargo, no se pueden obtener certificados sin firmar. Además, ¿alguna idea sobre cómo puedo hacer que tu código funcione de forma asíncrona? No quiero que la UI se cuelgue mientras espero respuestas. – Eamorr
Como dijo David, debe iniciar un nuevo hilo y poner la acción posterior http en el método de ejecución. Los datos se pueden intercambiar entre subprocesos mediante el uso del sistema de controlador de androides. Es posible que desee echar un vistazo a la página de fundamentos de Android: http://developer.android.com/guide/topics/fundamentals.html#threads – marcus