zoukankan      html  css  js  c++  java
  • H5+原生webview实现APP的JavascriptBridge的使用

    function setupWebViewJavascriptBridge(callback) {
          try {
            if (window.WebViewJavascriptBridge) {
              return callback(WebViewJavascriptBridge);
            }
            if (window.WVJBCallbacks) {
              return window.WVJBCallbacks.push(callback);
            }
            window.WVJBCallbacks = [callback];
            var WVJBIframe = document.createElement('iframe');
            WVJBIframe.style.display = 'none';
            WVJBIframe.src = 'https://__bridge_loaded__';
            document.documentElement.appendChild(WVJBIframe);
            setTimeout(function () {
              document.documentElement.removeChild(WVJBIframe)
            }, 0)
          } catch (e) {
            alert(e)
          }
        }
    
    
    
    IOS:
    function iosMethod(method, params) {
        setupWebViewJavascriptBridge(function (bridge) {
          try {
            if (params) {
              bridge.callHandler(method, params)
            } else {
              bridge.callHandler(method)
            }
          } catch (e) {
            alert(e)
          }
        })
    }
    
    例如:
    和ios约定的回调方法名  挂载在window
    window.scanResult = function(){}
    iosMethod('scan')
    Android:
    和Android约定的回调方法名  挂载在window
    window.scanResult = function(){}
    window.android.scan()
  • 相关阅读:
    数组类型
    约瑟夫环问题
    const在c和c++中地位不同
    Makefile学习之路——4
    单链表综合操作
    算法初探——大O表示法
    数据结构实用概念
    Makefile学习之路——3
    翻转字符串
    Makefile学习之路——2
  • 原文地址:https://www.cnblogs.com/BlueCc/p/14411095.html
Copyright © 2011-2022 走看看