首先JS要調(diào)用OC的方法,
這是JS給的方法名
/**
* title 分享標(biāo)題
* img? 分享圖片地址
* link? 分享鏈接
*/
game.wechatShare(title, img, link);
iOS端做的是在
- (void)webViewDidFinishLoad:(UIWebView *)webView;
這個方法中實現(xiàn)
//js oc 交互
JSContext *context = [webView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"];
context[@"game"] = self;
NSString *jsStr2 = @"game.weChatShare(title,img,link)";
[context evaluateScript:jsStr2];
定義協(xié)議
@protocol KnockExpor ?<JSExport>
- (void)we:(NSString *)title Chat:(NSString *)img Share:(NSString *)link;
@end
此處方法名定義,有幾個參數(shù)要把方法名拆分成幾段,首字母需要大寫(說多了都是淚),當(dāng)然參數(shù)多的話可以讓后臺返回個字典.
實現(xiàn)協(xié)議方法
- (void)we:(NSString *)title Chat:(NSString *)img Share:(NSString *)link
{
MyLog(@"%@-%@-%@",title,img,link);
}
別忘了回到主線程刷新UI
END本今。