zoukankan      html  css  js  c++  java
  • uniapp H5扫码解决方案

    JS通过webView调用本地相机扫码二维码,然后webView把二维码数据传给JS

    网上找了一堆资料,都是JS传值给webView的,这里自己看了下代码,通过两个步骤实现此功能
    1,通过JS调用webView函数打开本地相机
    JS代码:

    <body class="body_water">
       <button οnclick="subMit();">安卓扫码测试</button>
        <script type="text/javascript" src="./js/jtys/jquery-1.7.2.min.js"></script>
        <script type="text/javascript" src="./js/layer.js"></script>
        <script>
            function subMit() {
                alert("事件触发了!");
                window.FinishWeb.openCamera();
        
            }
           function getQRCode(code){
            alert("进入回调了");
          var cancel=code;
              alert(cancel);
          }
        </script>
    </body>

    webView代码:

    webSettings.setJavaScriptEnabled(true);
    webSettings.setDefaultTextEncodingName("UTF-8");
    webView.addJavascriptInterface(new FinishWeb(), "FinishWeb");
    public class FinishWeb {
        @JavascriptInterface
        public void close() {
            WebActivity.this.finish();
        }
    
        @JavascriptInterface
        public void openCamera() {
            Toast.makeText(WebActivity.this, "开始识别", Toast.LENGTH_SHORT).show();
            //本地扫码方法
            scan();
        }
    }

    2,通过webView调用JS的方法,把值传给JS

    webView代码:

    String code = "123456";
    String method =  "getQRCode('" + code + "')";//拼接参数,就可以把数据传递给js
    webView.evaluateJavascript(method, new ValueCallback<String>() {
        @Override
        public void onReceiveValue(String value) {
            Log.i("qcl0228", "js返回的数据" + value);
        }
    });

    一个简单的JS与webView交互传值就实现了

    https://blog.csdn.net/m0_37596450/article/details/105637686

  • 相关阅读:
    swfupdate flash上传工具
    在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服 务器。请验证实例名称是否正确并且 SQL Server 已配置为允
    多对多 一对一 一对多 主从 关联 字典
    JavaScript面向对象
    vue的transition过渡效果
    【译】Learn ES2015——箭头函数
    vue的选项
    JavaScript模块化
    vue-router
    vuex是啥
  • 原文地址:https://www.cnblogs.com/guwufeiyang/p/15439073.html
Copyright © 2011-2022 走看看