AndroidWebView&JS

Android 与JS进行交互

Posted by ML on July 16, 2019 字数:1222

浏览量:

Android 与JS进行交互

  • 设置支持javascript交互

      WebSettings wSet = webView.getSettings();
      wSet.setJavaScriptEnabled(true);
    
  • 加载js文件

    可以将文件放在资源文件assert文件夹下如:a.html 使用webView.loadUrl("file:///android_asset/a.html");加载js文件 或者使用网络文件webView.loadUrl("http://..");

  • 设置javascriptinterface接口

    webView.addJavascriptInterface(new JavaScriptInterface(), "JSI");

  • JavaScriptInterface内容

      public class JavascriptInterface{
      @JavascriptInterface
              public  String get() {
                  retutn "js call android by JavascriptInterface.";
              }
      }
    
    
  • a.html 内容

      <script>
      function showMsgWithoutParams(){
          alert("无参函数");
      }
      function showMsg(args){
          alert("有参函数"+args);
      }
      function callAndroidMethod(){
          //js调用android方法
         if (window.JSI && window.JSI.get) {
             alert( window.JSI.get());
          }
      }
      </script>
    
    
  • Android 调用js方式

    webview.post(() -> mBinding.webview.loadUrl("javascript:getUserVipInfo()"));

参考链接