Objective-c和javascript通信

1、github上下载该库,地址:https://github.com/marcuswestin/WebViewJavascriptBridge

2、项目中引入该库,步骤项目github有写。

3、简单配置:[WebViewJavascriptBridge enableLogging];

4、oc中初始化:

    self.bridge = [WebViewJavascriptBridge bridgeForWebView:self.webView];

5、如果js需要调用oc的方法,那么在oc中需要注册一个方法供js使用。

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

        NSDictionary *dic = @{@"heleNum":[LoginHuanxinId substringFromIndex:2]};

        responseCallback([self dictionaryToJson:dic]);

    }];

再在js中调用。

function drawDocument(arg) {

    if (isAndroid) {

       //...

        arg["heleNum"] = getQueryString('heleNum');

        var a = new $.followUp(arg);


    }

    if (isiOS) {

        setupWebViewJavascriptBridge(function(bridge) {

            bridge.callHandler("getFollowUp", function(data) {

               //...

                arg["heleNum"] = heleNum;

                var a = new $.followUp(arg);

            });

        });

    }

6、oc调用js的方法。首先在js中register一个方法。

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)
})

 

 

再oc中callhandler。

[_bridge callHandler:@"testJavascriptHandler" data:data responseCallback:^(id response) {
        NSLog(@"testJavascriptHandler responded: %@", response);
 }];

 

 

 

转载于:https://www.cnblogs.com/hcxl/p/8321544.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值