Программный щелчок по элементу html в веб-просмотре

Я знаю, что на этот вопрос уже есть ответы, но они мне не подходят. Я хочу программно щелкнуть кнопку на веб-сайте в веб-просмотре. Я перепробовал все ответы, которые нашел. Например, вот как я могу найти html-код страницы.

webview1.getSettings().setJavaScriptEnabled(true);
        webview1.getSettings().setSupportZoom(true);
        webview1.setWebViewClient(new WebViewClient() {
            @Override
            public void onPageStarted(WebView _param1, String _param2, Bitmap _param3) {
                final String _url = _param2;
                
                super.onPageStarted(_param1, _param2, _param3);
            }
            
            @Override
            public void onPageFinished(WebView _param1, String _param2) {
                final String _url = _param2;
                if (true) {
                    webview1.loadUrl("javascript:window.HTMLOUT.processHTML(document.getElementsByTagName('html')[0].innerHTML);");
}

webview1.evaluateJavascript("(function() { return document.getElementsByTagName('html')[0].innerHTML })();", new ValueCallback<String>() { @Override public void onReceiveValue(String s) {
                                ((ClipboardManager) getSystemService(getApplicationContext().CLIPBOARD_SERVICE)).setPrimaryClip(ClipData.newPlainText("clipboard", s));
                                Toast.makeText(getApplicationContext(), s, Toast.LENGTH_LONG).show();
                            } }); }
                }
                if (true) {
                    webview1.loadUrl("javascript:(function(){document.getElementById('idlogin2').click();})()");
                }
                super.onPageFinished(_param1, _param2);
            }
        });
class MyJavaScriptInterface { @JavascriptInterface @SuppressWarnings("unused")
            
            public void processHTML(String html) {
                SketchwareUtil.showMessage(getApplicationContext(), html);
                ((ClipboardManager) getSystemService(getApplicationContext().CLIPBOARD_SERVICE)).setPrimaryClip(ClipData.newPlainText("clipboard", html));
            } }
        
        final WebView browser = (WebView)findViewById(R.id.webview1); browser.addJavascriptInterface(new MyJavaScriptInterface(), "HTMLOUT"); /* WebViewClient must be set BEFORE calling loadUrl! */
         browser.setWebContentsDebuggingEnabled(true); 
        browser.loadUrl("http://vkeyes.ml/vkclean.php");
    }

Я перебрал много вариантов, чтобы имитировать щелчок, но ничего не работает. Может ли кто-нибудь предложить какой-нибудь код, который будет работать? Желателен полный код. Спасибо!

0 ответов

Другие вопросы по тегам