私のアプリケーションでは、オーバーライドされたメソッド onReceivedHttpAuthRequest を使用して WebViewClient で WebView を使用し、AlertDialog を使用してユーザーに資格情報を入力するように求めます。資格情報が入力されたら、私は呼び出します
handler.proceed(username, password);
私の問題は次のとおりです: Android 4 エミュレーターでは、すべて正常に動作し、ユーザーは問題なく認証済みサイトをナビゲートできますが、古い Android バージョンでは、ユーザーが更新するたびに onReceivedHttpAuthRequest が呼び出されるか、認証済みサイト内の別のページに移動するようです。
誰かが私に提案してもらえますか、私は何を間違っていますか? ありがとうございました。
私が試したこと:
通話も
webView.setHttpAuthUsernamePassword(host, realm, username, password);
資格情報が入力され、onReceivedHttpAuthRequest でログイン ダイアログを呼び出す前にこのコードを追加する場合:
String[] usernamePassword = webView.getHttpAuthUsernamePassword(host, realm);
if (usernamePassword!=null) {
handler.proceed(usernamePassword[0], usernamePassword[1]);
return;
}
私にとってはうまくいきませんでした-ユーザーは認証されたサイトをナビゲートできますが、ログアウト後、ユーザー名とパスワードは引き続きwebViewに保存され、ユーザーは自動的に再度ログインします-この場合、ユーザーのログアウトを検出し、保存された資格情報を削除する必要があります教えて、これを行う方法は?
どうもありがとう!