Ich schaffte es asynchron mit beiden Cookies arbeiten zu erhalten und nicht signierte https.
verwendete ich den Code hier:
http://masl.cis.gvsu.edu/2010/04/05/android-code-sample-asynchronous-http-connections/
und für nicht signierte https geändert hier mit Brian Yarger Code:
Self-signed SSL acceptance on Android
(Fügen Sie den obigen Code zu Beginn des Laufes () in HttpConnection.java)
Um die Cookies zu arbeiten, musste ich etwas Code ändern (P OST-Schnipsel aus 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;
Vielen Dank an alle für den Hinweis mich in die Richtung,
Hallo, Vielen Dank für Ihre Antwort. Es funktioniert gut. Wir können jedoch keine unsignierten Zertifikate erhalten. Auch irgendwelche Ideen darüber, wie ich Ihren Code asynchron arbeiten lassen könnte? Ich möchte nicht, dass die Benutzeroberfläche während des Wartens auf Antworten hängt. – Eamorr
Wie David sagte, müssen Sie einen neuen Thread starten und die HTTP-Post-Aktion in die run-Methode einfügen. Daten können zwischen Threads ausgetauscht werden, indem das Androids-Handler-System verwendet wird. Vielleicht möchten Sie einen Blick auf die Android Grundlagen-Seite werfen: http://developer.android.com/guide/topics/fundamentals.html#threads – marcus