zoukankan      html  css  js  c++  java
  • android 和h5互调步骤

    1. Android 中调用JS

    假如:H5页面中有一段如下JS代码

    function h5Test(str){
      xxxx...
      xxxx...
    }

    Android中调用方式如下:

    步骤一: 启动支持JS

    WebSettings ws = getSettings();

    ws.setJavaScriptEnable(True);

    步骤二: 加载网页

    webView.loadUrl(url);

    步骤三:调用网页中的js, 注意此处函数名要和 上面js代码中函数名完全一致

    webView.loadUrl("javascript:changeTitle('Android调用js')");

    2.JS调用Android

    假定点击H5网页上的一个按钮,跳转到Android代码中的某个Activity页面

    步骤一:启动支持JS

    WebSettings ws = getSettings();

    ws.setJavaScriptEnabled(true);

    步骤二:给webView添加JS接口类, 该类封装了原生的操作. 参数2是JS中的实体类名字,需要和js代码中名字保持一致

    webView.addJavascriptInterface(new JsInterface(),"js2android");

    H5页面见到js2android 就会到JsInterface()类中找相应方法.

    步骤三:编写接口类的内容

    public class JsInterface{
      @JavascriptInterface  //这个注解一定要带上
      public void selectPic(){
        Intent intent = new Intent(WebViewActivity.this,GetPicActivity.class);
        startActivityForResult(intent,100);
      }
    }

    步骤四:H5页面中JS对应代码

    function appSelectPic(){
      javascript:js2android.selectPic();
    }

    通过以上4个步骤,就可以做到点击H5页面的一个按钮,跳转到 对应Activity

  • 相关阅读:
    C++中的静态数据成员的作用与好处
    C++中的虚函数表
    CF292-D
    CF292-C
    CF292-B
    CF292-A
    CF291-B
    CF291-C
    CF287-B
    CF287-C
  • 原文地址:https://www.cnblogs.com/android-zcq/p/6207917.html
Copyright © 2011-2022 走看看