evaluateJavaScript
是 Android 中用于在 WebView 中執行 JavaScript 代碼的方法。要在 Android 中使用 evaluateJavaScript
,請按照以下步驟操作:
Activity
或 Fragment
中,需要設置 WebView 的 WebSettings 以允許 JavaScript:WebView webView = findViewById(R.id.webView);
WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);
evaluateJavaScript
方法,該方法接受一個回調函數作為參數。當 JavaScript 代碼執行完成時,此回調函數將被調用。例如:webView.evaluateJavaScript("JavaScript_code_here", new ValueCallback<String>() {
@Override
public void onReceiveValue(String value) {
// 在此處處理 JavaScript 代碼的返回值
Log.d("JavaScriptResult", "Result: " + value);
}
});
將 JavaScript_code_here
替換為您要執行的 JavaScript 代碼。如果代碼不需要返回值,您可以省略第二個參數或將其更改為 null
。
addJavascriptInterface
方法將一個 Java 對象注入到 WebView 中。例如:public class MyJavaScriptInterface {
private TextView resultTextView;
public MyJavaScriptInterface(TextView resultTextView) {
this.resultTextView = resultTextView;
}
@JavascriptInterface
public void processData(String data) {
// 在此處處理從 JavaScript 傳遞過來的數據
resultTextView.setText(data);
}
}
// 在 Activity 或 Fragment 中
TextView resultTextView = findViewById(R.id.resultTextView);
MyJavaScriptInterface myJavaScriptInterface = new MyJavaScriptInterface(resultTextView);
webView.addJavascriptInterface(myJavaScriptInterface, "Android");
然后,您可以在 JavaScript 代碼中調用此對象的方法,例如:
Android.processData("Hello from JavaScript!");
這樣,您就可以在 Android 中使用 evaluateJavaScript
處理 JavaScript 代碼了。