Android 如何在WebView中的身份验证之间抑制弹出窗口

Android 如何在WebView中的身份验证之间抑制弹出窗口,android,android-webview,Android,Android Webview,我创建了一个经过身份验证的webview,它允许用户使用关键字进行搜索,以显示webview中的内容。但是,webview在每个页面上都设置了身份验证,因此如果我在webview中导航,我必须再次进行身份验证,在我的情况下,我使用sharedprefs管理器来记住登录名和密码,从而自动对其进行身份验证。但是,每次我导航到webview中的不同页面时,它都会弹出一个屏幕,询问“您已注销,因为您登录了另一个设备[取消|登录]”。如何阻止此警报消息显示在我已验证的webview中,这显然是由于验证而发

我创建了一个经过身份验证的webview,它允许用户使用关键字进行搜索,以显示webview中的内容。但是,webview在每个页面上都设置了身份验证,因此如果我在webview中导航,我必须再次进行身份验证,在我的情况下,我使用sharedprefs管理器来记住登录名和密码,从而自动对其进行身份验证。但是,每次我导航到webview中的不同页面时,它都会弹出一个屏幕,询问“您已注销,因为您登录了另一个设备[取消|登录]”。如何阻止此警报消息显示在我已验证的webview中,这显然是由于验证而发生的。我正在使用cookies,但我不确定我是否正确使用它们。下面是我的代码的一个潜在峰值:

 public class MyWebViewClient extends WebViewClient {
        private String loginCookie;
        public MyWebViewClient(AnswersWebViewFragment answersWebViewFragment, WebView webview) {
            super();
        }
        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
            view.setVisibility(View.VISIBLE);

        }

        @Override
        public void onPageFinished(WebView view, String url) {
            view.setVisibility(View.VISIBLE);
            CookieManager cookieManager = CookieManager.getInstance();
            cookieManager.setCookie(url, loginCookie);
            final Animation fade = new AlphaAnimation(0.0f, 1.0f);
            fade.setDuration(200);
            view.startAnimation(fade);
            view.setVisibility(View.VISIBLE);
            progressBar.setVisibility(View.GONE);

        }
        @Override
        public void onReceivedError( WebView view, int errorCode, String description, String failingUrl ) {
            Toast.makeText(view.getContext(), "Authentication Error", Toast.LENGTH_LONG).show();
        }

        @Override
        public void onLoadResource( WebView view, String url ){
            //CookieManager cookieManager = CookieManager.getInstance();
            //loginCookie = cookieManager.getCookie(url);
        }

        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {

                return super.shouldOverrideUrlLoading(view, url);


        }
        @Override
        public void onReceivedSslError( WebView view, SslErrorHandler handler, SslError error ) {
            handler.proceed();
        }

        @Override
        public void onReceivedHttpAuthRequest( WebView view, final HttpAuthHandler handler, final String host, final String realm ){


                handler.proceed(USERNAME,PASSWORD);

    }


    }
在另一个类中,我是如何存储用户名和密码的:

SharedPreferencesManager manager = SharedPreferencesManager.getInstance();
    private static  String URL;
    private final  String USERNAME = manager.getLoginUsername();
    private final  String PASSWORD = manager.getDecryptedLoginPassword();

你知道怎么做吗?

在搜索页面中注释验证登录名的代码