Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/221.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何编写一个webview来自动登录我的yahoo帐户?_Android_Android Webview_Android Webservice_Android Websettings_Android Authenticator - Fatal编程技术网

Android 如何编写一个webview来自动登录我的yahoo帐户?

Android 如何编写一个webview来自动登录我的yahoo帐户?,android,android-webview,android-webservice,android-websettings,android-authenticator,Android,Android Webview,Android Webservice,Android Websettings,Android Authenticator,我正在编写一个测试webview应用程序,我打算在启动应用程序视图时打开我的雅虎邮件。这将是一个网络视图,在那里我想硬编码我的用户名和密码。我知道yahoo使用get方法而不是post。有什么办法可以做到这一点吗? 以下是我目前的代码: Webview webview = (WebView) getView().findViewById(R.id.mywebview); webview.setBackgroundColor(0); webview.getSettings(

我正在编写一个测试webview应用程序,我打算在启动应用程序视图时打开我的雅虎邮件。这将是一个网络视图,在那里我想硬编码我的用户名和密码。我知道yahoo使用get方法而不是post。有什么办法可以做到这一点吗? 以下是我目前的代码:

Webview webview = (WebView) getView().findViewById(R.id.mywebview);
webview.setBackgroundColor(0);
            webview.getSettings().setJavaScriptEnabled(true);

            webview.setWebViewClient(new webClient());
            String url = "https://www.yahoomail.com";
            webview.loadUrl(url);

private class webClient extends WebViewClient {
        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
            view.setVisibility(View.VISIBLE);

        }
        @Override
        public void onPageFinished(WebView view, String url) {

            final Animation fade = new AlphaAnimation(0.0f, 1.0f);
            fade.setDuration(200);
            view.startAnimation(fade);

            view.setVisibility(View.VISIBLE);

        }
        public void animate(final WebView view) {
            final Animation anim = AnimationUtils.loadAnimation(getActivity(),
                    R.anim.slide_in_from_left);
            view.startAnimation(anim);
        }
        @Override
        public void onReceivedError( WebView view, int errorCode, String description, String failingUrl ) {
            Toast.makeText(view.getContext(), "Authentication Error", Toast.LENGTH_LONG).show();
            CookieManager cookieManager = CookieManager.getInstance();
            cookieManager.setCookie("yahooemail@yahoo.com", "yahoopass");
            super.onReceivedError(view, errorCode, description, failingUrl);
        }

        @Override
        public void onLoadResource( WebView view, String url ){

        }

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

            return super.shouldOverrideUrlLoading(view, url);

        }

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

            handler.proceed("yahooemail@yahoo.com", "yahoopass");

        }

    }

加载url(字符串url)
加载给定的URL

postrl(字符串url,字节[]postData)
使用“POST”方法将带有postData的URL加载到此WebView中

因此,与其使用:

String url = "https://www.yahoomail.com";
webview.loadUrl(url);
使用:

您可以从登录页面提取Yahoo所需的变量。

加载url(字符串url)
加载给定的URL

postrl(字符串url,字节[]postData)
使用“POST”方法将带有postData的URL加载到此WebView中

因此,与其使用:

String url = "https://www.yahoomail.com";
webview.loadUrl(url);
使用:


您可以从登录页面中提取Yahoo所需的变量。

我如何使用yahoomail.com的postrl?这一行是什么?postvar=value&postvar2=value2我如何在yahoomail.com上使用postrl?这行是什么?postvar=value&postvar2=value2