关于WebViewJavascriptBridge

关于WebViewJavascriptBridge关于 WebViewJavas 描述 iOS 与 js 交互的几种方式 1 服务器主动促发 2 客户端主动促发

/* ********** 关于WebViewJavascriptBridge ******** * 本地主动发消息给服务器(本地被动行为): * 服务器注册:  bridge.registerHandler('testJavascriptHandler', function(data, responseCallback) { 
     log('ObjC called testJavascriptHandler with', data)  var responseData = { 'Javascript Says':'Right back atcha!' }  log('JS responding with', responseData)  responseCallback(responseData)  }) * 需要本地发送:  [_bridge callHandler:@"testJavascriptHandler" data:@{ @"foo":@"before ready" }];  或者  [_bridge callHandler:@"testJavascriptHandler" data:data responseCallback:^(id response) { 
     NSLog(@"testJavascriptHandler responded: %@", response);  }]; ************************ * 服务器向本地发消息(服务器被动行为): * 本地注册:  [_bridge registerHandler:@"testObjcCallback" handler:^(id data, WVJBResponseCallback responseCallback) { 
     NSLog(@"testObjcCallback called: %@", data);  responseCallback(@"Response from testObjcCallback");  }]; * 服务器发消息:  bridge.callHandler('testObjcCallback', {'foo': 'bar'}, function(response) { 
     log('JS got response', response)  }) ************************ * 服务器发送消息(服务器主动行为):  bridge.send(data, function(responseData) { 
     log('JS got response', responseData)  }) * 会响应本地注册_bridge的Handler:  _bridge = [WebViewJavascriptBridge bridgeForWebView:webView webViewDelegate:self handler:^(id data, WVJBResponseCallback responseCallback) { 
     NSLog(@"ObjC received message from JS: %@", data);  responseCallback(@"Response for message from ObjC");  }]; ************************ * 本地发送消息(本地主动行为):  [_bridge send:@"A string sent from ObjC before Webview has loaded." responseCallback:^(id responseData) { 
     NSLog(@"objc got response! %@", responseData);  }];  或者  [_bridge send:@"A string sent from ObjC after Webview has loaded."]; * 服务器会响应服务器注册_bridge时的Handler:  bridge.init(function(message, responseCallback) { 
     log('JS got a message', message)  var data = { 'Javascript Responds':'Wee!' }  log('JS responding with', data)  responseCallback(data)  }) ************************/
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/213367.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 下午5:59
下一篇 2026年3月18日 下午5:59


相关推荐

  • python之pygame安装教程_Pygame安装教程

    python之pygame安装教程_Pygame安装教程1、python–version查看安装的Python版本,pip–version查看安装的pip版本,升级pip命令:python-mpipinstall–upgradepip如果已经下载了安装文件就使用:pipinstall文件名如果没有下载就使用:python-mpipinstall–user模块名,系统自动下载2、如果没有安装pip,先安装pi…

    2022年5月24日
    48
  • 【评分卡】评分卡入门与创建原则——分箱、WOE、IV、分值分配

    【评分卡】评分卡入门与创建原则——分箱、WOE、IV、分值分配本文主要讲 变量选择 模型开发 评分卡创建和刻度 变量分析首先 需要确定变量之间是否存在共线性 若存在高度相关性 只需保存最稳定 预测能力最高的那个 需要通过 VIF varianceinfl 也就是方差膨胀因子进行检验 变量分为连续变量和分类变量 在评分卡建模中 变量分箱 binning 是对连续变量离散化 discretizati 的一种称呼

    2026年3月20日
    1
  • DDOS工具合集

    DDOS工具合集CC 著名的 DDOSCC 工具 效果非常好 CC2 0 使用了和 CC1 0 一样的原理但是不同的编程技术 CC2 0 的理论连接比 CC1 0 有了几十倍的提高但是在同样连接数的效率上有所降低 CC2 0 支持比 1 0 更多的随机参数 S s N n P p C c 1 9 S 大写英文 s 小写英文 P p 密码模式 就是英文数字都有的 N n 数字 C c 中文还增加了一个 L 表示是上一次随机的 比如论

    2026年3月26日
    2
  • 硬盘MBR和GPT分区格式哪种更好? 新电脑和固态硬盘首选GPT!

    硬盘MBR和GPT分区格式哪种更好? 新电脑和固态硬盘首选GPT!

    2026年3月16日
    2
  • git切换远程分支然后怎么拉取(从远程拉取分支到本地分支)

    Git拉取远程分支到本地本地新建一个空白文件夹folder;进入folder目录,打开gitbash,用命令行初始化git仓库;$gitinit3.与远程仓库建立连接;//`http://xxx…`该网址为远程仓库`Game`的ip地址,可在远程仓库`Game`中进行查看$gitremoteaddoriginhttp://192.168.22.88:8000/102840/Game.git拉取远程分支到本地;//`cs`替换为远程分支名$gitf

    2022年4月18日
    165
  • Android 获取开发版SHA1和发布版SHA1详细介绍「建议收藏」

    Android 获取开发版SHA1和发布版SHA1详细介绍「建议收藏」前言:项目需求接入百度定位,在创建应用时申请AK,需要用到SHA1,在这里把踩过的坑总结下来,并希望可以适当减少开发小伙伴们的头痛。说来就来上干货一、获取开发版SHA1:1、可以使用AndroidStudio提供的命令控制台,毕竟做Android开发几乎都是用AndroidStudio了。也可以使用黑窗口windows+R并键入cmd即可使用2、接着输入命令cdU…

    2022年8月10日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号