温馨提示×

android evaluatejavascript 如何实现

小樊
84
2024-11-25 12:29:44
栏目: 编程语言

Android 中可以使用 WebView 来加载并执行 JavaScript 代码。而 evaluateJavascriptWebView 的一个方法,用于执行 JavaScript 代码并返回结果。

下面是一个简单的示例代码,演示如何使用 evaluateJavascript 方法:

// 获取 WebView 对象
WebView webView = findViewById(R.id.webView);

// 启用 JavaScript 支持
WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);

// 加载网页
webView.loadUrl("https://example.com");

// 执行 JavaScript 代码并获取结果
webView.evaluateJavascript("(function() { return 'Hello, world!'; })();", new ValueCallback<String>() {
    @Override
    public void onReceiveValue(String value) {
        // 处理返回值
        Log.d("WebView", "JavaScript result: " + value);
    }
});

在上面的示例中,我们首先获取了 WebView 对象,并启用了 JavaScript 支持。然后加载了一个网页,并使用 evaluateJavascript 方法执行了一个简单的 JavaScript 代码块,该代码块返回了一个字符串 “Hello, world!”。最后,我们使用 ValueCallback 接口接收并处理了 JavaScript 代码的返回值。

需要注意的是,evaluateJavascript 方法可以在 WebView 的任何生命周期方法中调用,但是在页面加载完成之前执行的 JavaScript 代码可能会导致错误。因此,建议在页面加载完成后再调用 evaluateJavascript 方法,例如在 WebViewClientonPageFinished 方法中调用。

0