Android内嵌H5(1)

Android嵌入H5,并调用H5中的方法

1、Android嵌入H5,并添加对js的支持

1)首先获取WebView对象实例,或去之后将页面加载到该实例中

WebView webView = findViewById(R.id.webView_h5);//获取android页面中的中的webViewwebView.loadUrl("http://127.0.0.1/asset/pages/forAndroidAndH5.html");//嵌入H5页面

2)添加js支持

WebSettings webSettings = webView.getSettings();webSettings.setJavaScriptEnabled(true);//打开js支持

3)加入辅助处理js,不然有一些js的函数会失效,比如alert()方法

webView.setWebChromeClient(new WebChromeClient(){public boolean onJsAlert(WebView view, String url, String message, JsResult result){        return super.onJsAlert(view, url, message, result);    }});

4)加入缓存清楚机制,不然H5页面有变动,不能及时在app端显示出来

webSettings.setCacheMode(WebSettings.LOAD_NO_CACHE);

至此,android内嵌H5的工作已经完成,接下来将是android端调用H5的js函数

2、android调用H5的js函数

1)调用无参/有参,但无返回值的js函数

webView.loadUrl("JavaScript:androidtoh5Withparam('" + msg + "')");

如果参数是字符串,则需要'单引号,如果传递的是数值,则不需要,如果没有参数,支保留一个()即可

2)调用无参/有参,且有返回值的js函数

int arg1 = 10;int arg2 = 12;String methodH5 = "androidtoh5WithResult(" + arg1 + "," + arg2 + ")";webView.evaluateJavascript(methodH5, new ValueCallback() {@Overridepublic void onReceiveValue(String s) {    System.out.println("=====s:" + s);}});

传参形式和==1)==中提到的一样
对应的H5中的js函数为

function androidtoh5WithResult(arg1, arg2) {return arg1 + arg2;}

至此,Android内嵌H5(1)的内容已经完成

Android内嵌H5(2)地址:https://blog.csdn.net/Dong_Da_JR/article/details/84337762

更多相关文章

  1. C语言函数以及函数的使用
  2. Android JNI简单实例(android 调用C/C++代码)
  3. vue.js的h5页面与android(WebViewJavascriptBridge) / ios(windo
  4. Android与js交互实例
  5. 【Android NDK 开发】Ubuntu 函数库交叉编译 ( Android 动态库交
  6. Android 性能优化实例
  7. android linearlayout 把控件view置底部(放在页面最下方)
  8. android 页面显示不下时怎么办?
  9. Android EditText进入页面不聚焦设置(进入页面不弹出键盘,点击弹出

随机推荐

  1. FileProvider 路径配置策略的理解
  2. android第四天早:多线程基础
  3. Android 源码编译环境搭建
  4. 解决:Failed to fectch URl https://dl-ss
  5. Android 对话框(Dialog)大全 建立你自己
  6. Android 进阶——Material Design新控件
  7. Maven开发Android指南 4 与Eclipse整合(m2
  8. Android的滑动手势处理
  9. Android开发——工欲善其事必先利其器
  10. android应用程序fps meter[帧数显示]的分