实现Android和html交互

整体流程

首先,让我们来看一下实现Android和html交互的整个流程:

erDiagram
    HTML -- Android: 实现交互

具体步骤

接下来,让我们来看一下每个步骤需要做什么以及所需要使用的代码:

步骤操作代码
1在 Android 项目中创建一个 WebViewWebView webView = findViewById(R.id.webview);
2启用 JavaScriptwebView.getSettings().setJavaScriptEnabled(true);
3创建一个 WebViewClient
webView.setWebViewClient(new WebViewClient() {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);
            return true;
        }
    });
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.

| 4 | 在html中添加JavaScript代码,用于与Android交互 |

<script>
    function callAndroid() {
        AndroidFunction.showToast("Hello from HTML!");
    }
</script>
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

| 5 | 在Android代码中添加与html交互的接口 |

public class AndroidFunction {
    Context mContext;

    AndroidFunction(Context context) {
        mContext = context;
    }

    @JavascriptInterface
    public void showToast(String message) {
        Toast.makeText(mContext, message, Toast.LENGTH_SHORT).show();
    }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.

| 6 | 将 AndroidFunction 注入到 WebView 中 | webView.addJavascriptInterface(new AndroidFunction(this), "AndroidFunction"); |

总结

通过以上步骤,我们就实现了 Android 和 html 的交互。希望这篇文章能帮助你快速上手实现这个功能。记得多练习,加深理解,相信你很快就能掌握这个技能了!