react-native在iOS目录下pod install安装glog的时候为什么会失败?
pod --version1.16.2xcode-select -p/Applications/Xcode.app/Contents/Developerxcodebuild -showsdksDriverKit SDKs: {代码...} iOS SDKs: {代码...} iOS Simulator SDKs: {代码...} macOS SDKs: {代码...} tvOS SDKs: {代码...} tvOS Simulator SDKs: {代码...} visionOS SDKs: {代码...} visionOS Simulator SDKs: {...
2 回答541 阅读
转一下自觉的答案先
JS 和 iOS 互调是个很经典的问题,我们先来看下不借助外部框架怎么搞的
不借助外部框架【WebView】
iOS 调用 JS
[webView stringByEvaluatingJavaScriptFromString:@"alert('boom shaka laka')"];
非常的 easy
JS 调用 iOS,我比较推崇的是调用一个 url,然后自己定义解析规则的方式。
我举个?吧,下面是一段 html 代码,
用户在你的 WebView 上面点了这样一个连接,这个时候会调起
(BOOL)webView:(UIWebView )webView shouldStartLoadWithRequest:(NSURLRequest )request navigationType:(UIWebViewNavigationType)navigationType
这个时候你解析下 request.URL 做下判断就ok了。。
不借助外部框架 【WKWebView】
WKWebView 性能更屌,内存更少,但是缓存之类的设置非常的忧伤。。。Cookie 更是诡异
WKWebView 的坑看这里
https://github.com/ShingoFukuyama/WKWebViewTips/blob/master/README.md
iOS 调用 JS
一样很 easy,这样调用就好了
evaluateJavaScript:script completionHandler:^(id result, NSError *error)
JS 调用 iOS
一样的。。找到 url 处理
(void)webView:(WKWebView )webView decidePolicyForNavigationAction:(WKNavigationAction )navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler
可以用的轮子
WebViewJavascriptBridge
https://github.com/marcuswestin/
= =其实我不太喜欢这个轮子。。。用起来太绕了
JSPatch
https://github.com/bang590/JSPatch
这个好像跟问题没有关系。。不过请关注。。神器。
Hybrid App 的坑其实也不多。
--------------如何监听----
假如 onclick 调用的方法叫 test()
在test里面补充一下代码
再配合上面的方法,就成功调用了