美文网首页
js 和app交互(ios)

js 和app交互(ios)

作者: 一半春夏一半秋冬 | 来源:发表于2020-03-31 23:47 被阅读0次

h5和android交互方法:https://www.jianshu.com/p/53a44780a34f

首先 不管是ios调用h5,还是h5调用ios的方法都需要定义JavascriptBridge

/** 建立桥 */
 function setupWebViewJavascriptBridge  ( callback) {

  if (window['WebViewJavascriptBridge']) {

    return _callback(window['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(() => {

    document.documentElement.removeChild(WVJBIframe);
  }, 0);
}

一、ios调用h5方法: 使用registerHandler

 setupWebViewJavascriptBridge((bridge) => {

    bridge.registerHandler(name:“ios调用h5的方法名”, function(data, responseCallback) {

        console.log('do something')
        responseCallback(data)
        
    })

  });

二、h5调用IOS的方法:callHandler

setupWebViewJavascriptBridge((_bridge) => {

    _bridge.callHandler(name:H5调用IOS的方法名, data:传给ios的参数, (_res) => {
  
      /** 回调,可以不用*/
      callback();

    })

  });

相关文章

网友评论

      本文标题:js 和app交互(ios)

      本文链接:https://www.haomeiwen.com/subject/csunuhtx.html