Android Webview auto-login auf die https-website durch die Einstellung der cookie-token
Was ich versuche zu erreichen ist, um autologin zu einer https-website, indem ein token als cookie.
( Es funktioniert auf android-chrome-browser, aber nicht in Anwendung webview )
Grundsätzlich bin ich vor zwei Problem beim laden von https-url in der web-Ansicht mit cookie gesetzt
Ausgabe 1
Erhalte ich folgende log-Meldung.
Nicht überprüft die Zertifikatkette Fehler:
java.Sicherheit.cert.CertPathValidatorException: Vertrauen-Anker für
Zertifizierung Pfad nicht gefunden.
Habe ich versucht das überschreiben onReceivedSslError
und rief handler.proceed();
als unten.
@Override
public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
Log.d(TAG, "==> " + error.toString());
handler.proceed();
}
Aber noch sehe ich weiße Seite ( ich nehme an Seine da, weil der Zertifikat-Problem. )
Ausgabe 2
Ich habe ein login-url mit me ( e.g https://www.abc.com/login.html )
Was ich versuche zu erreichen, ist das auto-login in die web-Ansicht durch das setzen eines Cookies.
CookieSyncManager.createInstance(webView.getContext());
CookieManager cookieManager = CookieManager.getInstance();
CookieManager.getInstance().setAcceptCookie(true);
String token = PreferenceHelper.loadTokenFromPreference(this);
String sessionCookie = "staging=" + token;
cookieManager.setCookie("https://www.abc.com/aaa/",
sessionCookie);
CookieSyncManager.getInstance().sync();
SystemClock.sleep(1000);
Aber noch bin ich nicht in der Lage, auto-login.Eher sehe ich die weiße Seite.
Was ich bin nicht sicher, jetzt ist genau da, wo ich bin, einen Fehler zu machen.
cookieManager.setCookie
erfordert erste argument als url für das cookie setzen muss,bin ich nicht ganz sicher welche url muss ich es geben ?
Kann jemand empfehlen, mir den richtigen Ansatz, um es arbeiten ?
Dank
- Es ist eher seltsam, dass Sie wissen, die cookie-Inhalt, aber nicht die domain. Ist das deine website? Wenn nicht, wie hast du erfahren, dass der cookie-Inhalt?
- Ich bin der Einstellung einer domain zu. aber ich bin noch immer eine leere Seite.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie das Cookie als
HttpHeader
imloadUrl
FunktionWebView
.Sowie nach der Suche für eine ganze Weile habe ich endlich die Lösung.
Musste ich hinzufügen, die folgenden Zeilen, um es arbeiten.