Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.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
Javascript 如何在Android Studio中的网络视图中自动填充网站字段/表单?_Javascript_Java_Android_Android Webview - Fatal编程技术网

Javascript 如何在Android Studio中的网络视图中自动填充网站字段/表单?

Javascript 如何在Android Studio中的网络视图中自动填充网站字段/表单?,javascript,java,android,android-webview,Javascript,Java,Android,Android Webview,例如,我想自动填充Facebook的登录字段(电子邮件和密码)或谷歌的搜索字段。我已经回答了很多关于自动填充的问题,包括 这是我目前的代码,它在WebView中打开了网站,但没有填写任何内容。对于getElementById,我检查了facebook的电子邮件和密码字段,它们的ID是电子邮件和密码 webView = (WebView) findViewById(R.id.webView1); webView.loadUrl("https://www.facebook.

例如,我想自动填充Facebook的登录字段(电子邮件和密码)或谷歌的搜索字段。我已经回答了很多关于自动填充的问题,包括

这是我目前的代码,它在WebView中打开了网站,但没有填写任何内容。对于getElementById,我检查了facebook的电子邮件和密码字段,它们的ID是电子邮件和密码

    webView = (WebView) findViewById(R.id.webView1);
    webView.loadUrl("https://www.facebook.com");
    WebSettings webSettings = webView.getSettings();
    webSettings.setJavaScriptEnabled(true);
    webSettings.setDomStorageEnabled(true);
    webView.setWebViewClient(new WebViewClient() {
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);
            return true;
        }


        public void onPageFinished(WebView view, String url) {
            String user = "udb";
            String pwd = "abcdefg";
            view.loadUrl("javascript:document.getElementById('email').value = '" + user + "';document.getElementById('pass').value='" + pwd + "';");
            System.out.println("AUTOFILL");
        }
    });
它给了我这个错误

I/C:[信息:控制台(1)]“未捕获类型错误:无法设置null的属性'value',来源:(1)


不过,我对javaScript了解不多。

我仍然无法让facebook正常工作,但我让谷歌登录和其他一些网站注册/登录。所以基本上你需要检查网站的元素(使用桌面上的谷歌浏览器),然后获得元素id

这是填写表单/字段的代码:

    webView.loadUrl("javascript:(function() { document.getElementById('last_name').value = '" + lName + "'; ;})()");
这是单击按钮的代码:

    webView.loadUrl("javascript:(function() { var z = document.getElementById('signInButton').click(); })()");
哦,我用我的手机来做这件事,因为用模拟器它什么也没做


编辑:事实上,我通过查看mobile.facebook.com网站让facebook发挥了一定的作用,但是没有电子邮件的ID,只有密码、登录按钮和一些其他元素。

你知道如何在谷歌的网站上自动填写月份吗。我不能用你的方法改变它。