Android webview和js交互 之踩坑

1.前言:Android 通过webview和网页东西进行交互 由于网页无法调用原生的一些方法:比如调用相册或者照片之类的无法调用,则需要原生和js进行交互。
  本项目使用的是七牛的三方工具进行的交互 内置 标签 需要重写WebChromClient 根据版本调用openFile或者showFile方法,但适配出现了严重的问题,相当一部分机型不能响应该方法,有一部分能响应的上传4M以上的大图的时候无法响应,总之问题颇多。所以想到了两者互调,使用原生方法进行调用相册拍照以及后续上传工作,上传完毕后将获取到的网址传给js,以便实现响应的功能。
  ps: a.webview.getSettings().setJavaScriptEnabled(true)//使支持js
        b.webview.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);//使允许js弹框
        c.经验式理解:http://localhost:8080/  myweb/hello.html
       以上web地址,前边=URL;资源定位符  后边=URI资源标识符
  
2.Android原生 调用js
  (1)通过webview的loadUrl();方法
  (2)通过webview的evaluateJavaScript();方法
  
   (1)webView.loadUrl("javascript:showInfoFromJava('" + msg + "')");//其中showInfoFromJava()为 js方法需h5在

你可能感兴趣的:(webview,js交互)