#pragma mark - 如何使用:

// 第一步

#import "WebViewJavascriptBridge.h"

// 第二步 声明属性

@property WebViewJavascriptBridge* bridge;

// WebViewJavascriptBridge 支持WKWebView 或者 UIWebView 与 JS交互

self.bridge = [WebViewJavascriptBridge bridgeForWebView:webView];

// JS调用OC 的方法

[self.bridge registerHandler:@"ObjC Echo" handler:^(id data, WVJBResponseCallback responseCallback) {

NSLog(@"ObjC Echo called with: %@", data);

responseCallback(data);

}];

// OC调用JS 的方法

[self.bridge callHandler:@"JS Echo" data:nil responseCallback:^(id responseData) {

NSLog(@"ObjC received response: %@", responseData);

}];

// 这是JS代码的处理 通常是 H5人员或后台人员处理

function setupWebViewJavascriptBridge(callback) {

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)

}

setupWebViewJavascriptBridge(function(bridge) {

/* Initialize your app here */

bridge.registerHandler('JS Echo', function(data, responseCallback) {

console.log("JS Echo called with:", data)

responseCallback(data)

})

bridge.callHandler('ObjC Echo', {'key':'value'}, function responseCallback(responseData) {

console.log("JS received response:", responseData)

})

})

ioswebview混编_iOS与H5混编--优秀的第三方框架WebViewJavascriptBridge相关推荐

  1. java sound 混音_iOS音频编程之混音

    title: iOS音频编程之混音 date: 2017-04-19 tags: Audio Unit,AUGraph, Mixer,混音 博客地址 iOS音频编程之混音 需求:多个音频源混合后输出, ...

  2. 分轨混音制作|分轨混音多少钱?分轨混音母带处理服务| MZD Studios

    混音太单薄没有力量?人声像贴唱没有立体感?乐器太混不够清晰?不想太业余低端? 高端混音服务就找 MZD Studios. MZD Studios 职业混音/唱片制作:主攻欧美向/电子及重型音乐制作: ...

  3. 不推荐二周目跑重复剧情 不推荐开混10,建议开混11,游戏文本的奖励减半并没有生效. 混10=混11+混乱词条 1.经济获取(学自大佬:小小银Salmon【B站号】) 金币获取:刚通关开混乱11,拿主

    不推荐二周目跑重复剧情 不推荐开混10,建议开混11,游戏文本的奖励减半并没有生效. 混10=混11+混乱词条 1.经济获取(学自大佬:小小银Salmon[B站号]) 金币获取:刚通关开混乱11,拿主 ...

  4. cruise软件模型,混动仿真模型,IMMD架构混联混动仿真模型,Cruise混动仿真模型

    cruise软件模型,混动仿真模型,IMMD架构混联混动仿真模型,Cruise混动仿真模型,混联混动汽车动力性经济性仿真. 关于模型 1.本模型是基于IMMD架构搭载的混联混动仿真模型,关于IMMD架 ...

  5. 东风本田crv2020新款混动说明书_2020款混动CRV上线,颜值升华,动力升级,再看价格,H6够呛了...

    本田CRV卖出了184,423,不过2020年受到疫情影响,这辆车在二月份收获为零,不管你喜不喜欢本田CRV都不得不承认它的人气,机油门只是暂时让它的气焰降低了一点点,等事件平息之后,本田CRV又迎来 ...

  6. 油电混合是什么意思,插电混动和油电混动的区别?

    油电混合是什么意思,插电混动和油电混动的区别? 参考链接:油电混合是什么意思,插电混动和油电混动的区别_车主指南 (icauto.com.cn) 所谓的油电混合一般是指燃料与电能的混合,内燃机与电机的 ...

  7. ioswebview混编_iOS 原生和H5混合开发总结

    最近一段时间开发一个App,由于时间紧采用原生+H5混合开发,这里记录一下开发过程中遇到的问题. 之前在项目中使用过WebViewJavascriptBridge,使用起来很简单,但是这次项目中没有使 ...

  8. dart和python混编,Flutter与iOS混编(一)

    前言 Flutter和iOS支持两种形式的混编,一种是某一些页面全是用flutter去绘制,另外一只是flutter页面作为iOS某个控制器页面的一部分去展示,后面会逐步去介绍这两种方式的实现 本篇文 ...

  9. 计算机相关专业混体制的解决方案(事业编之学校与医院)

    文章目录 1.教师行业 1.1 中小学教师资格 1.2 高校教师资格证 1.3 应聘中小学教师 1.4 待遇 2.医疗行业 2.1 如何进入医院信息科 2.2 医院信息科工作内容 2.3 医院信息科待 ...

最新文章

  1. 【FFmpeg】函数详解(二)
  2. VTK:相互作用之CallBack
  3. 免安装免配置 还免费的Spark 集群 --Databrickes Spark Clould
  4. 新的Java缓存标准(javax.cache)
  5. opencv的两个错误
  6. Mac 下隐藏显示隐藏文件
  7. 笨人学php好学吗_平面设计学多久能上手 好学吗
  8. gperftools
  9. servlet request参数只能取一次解决方法
  10. php创建多级目录函数,php创建多层(多级)目录的函数
  11. 软件的工程化管理(二)(转)
  12. 【世界最佳旅游win7主题】
  13. 收藏:更换手机号必做的9件事
  14. Ambire 钱包推出 Moonbeam 集成:Ambire 上的第一个 Polkadot 平行链
  15. mui android连接蓝牙打印机打印
  16. 2021最新苹果开发者计划注册流程
  17. C++ Primer Plus 自学第六章结尾编程9题
  18. 2018AVA: A Video Dataset of Spatio-temporally Localized Atomic Visual Actions
  19. 随机森林算法(RandomForest)实现MNIST手写体数字识别
  20. 如何创建二维数组 微信小程序_微信小程序遍历二维数组

热门文章

  1. Android打包使用自有证书认证
  2. IOS开发中实现UITableView按照首字母将集合进行检索分组
  3. 转:LoadRunner检查点使用小结
  4. python中关于sklearn 0.18的错误—— cannot import name comb
  5. 带新手玩转MVC——不讲道理就是干(下)
  6. day17 Python 反射获取内容和修改内容
  7. JavaEE——Mybatis(6)--association的分步查询与延迟加载 以及Collection和鉴别器discriminator...
  8. url请求特殊字符转换
  9. linux 删除进程的多种方法
  10. 安卓与IOS移动段浏览器视频与音频的问题与总结