Android-studio中能否使用WebView中JavaScript与Andorid中java方法互调?如果可以,想想该怎么做
时间: 2024-03-02 21:54:08 浏览: 76
是的,Android Studio 中可以使用 WebView 中的 JavaScript 与 Android 中的 Java 方法互调。具体实现如下:
1.在 WebView 中启用 JavaScript 支持:
```
webView.getSettings().setJavaScriptEnabled(true);
```
2.在 Android 中定义供 JavaScript 调用的方法:
```
public class MyJSInterface {
@JavascriptInterface
public void showToast(String message) {
Toast.makeText(MainActivity.this, message, Toast.LENGTH_SHORT).show();
}
}
```
3.将 Android 中的接口对象传递给 WebView:
```
webView.addJavascriptInterface(new MyJSInterface(), "MyJSInterface");
```
4.在 JavaScript 中调用 Android 中的方法:
```
<button onclick="window.MyJSInterface.showToast('Hello, World!')">Click me</button>
```
这样就可以实现 JavaScript 与 Android 中的 Java 方法互调了。需要注意的是,在 Android 4.2 之前,需要加上 `@JavascriptInterface` 注解才能让 WebView 调用该方法,而在 Android 4.2 及之后版本,为了提高安全性,需要在 WebView 中启用 `setJavascriptInterfaceLocally` 方法才能调用该方法。
阅读全文