首页
学习
活动
专区
圈层
工具
发布

技术 | Hybrid载体的变化(一)

如下都简称WK 正常情况下,我们做Hybrid容器基本会用到WKWebView几乎全部的特性,但是也有三个其中重中之重的地方,那就是JavaScript的交互与网页应用的性能监控。...到Native类型的转换,比如JavaScript的对象可以转为Dictionary对应的其他类型也是如此。...发送消息就更不用说了,直接调用“evaluateJavaScript”方法注入就好,唯一的优势是在于,发送的消息可以先转成JSON,然后字符串化当参数传入到一个函数里,而你的函数真实接收到的是一个对象,...{ // 当内容开始返回时调用 } func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!)..., withError error: Error) { // 页面加载错误 print(error) } 每一个delegate实现中你都应该去做一条日志的记录或者是页面加载完成时间

1.1K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    wkwebview加载完成_【Swift】WKWebView与JS的交互使用

    一、前言 近日,有朋友问我关于WKWebView与JS的交互问题,可我之前一直使用的是UIWebView,也不曾做过WKWebView的交互啊!...二、WKWebView 支持更多的HTML5的特性 高达60fps滚动刷新频率与内置手势 与Safari相容的JavaScript引擎 在性能、稳定性方面有很大提升占用内存更少 协议方法及功能都更细致...,结果为一个元素;如果没找到匹配的元素,则返回null document.querySelectorAll()//css选择符模式,返回与该模式匹配的所有元素,结果为一个类数组 六、JavaScriptCore...您使用此类有两个主要目的:支持并发 JavaScript 执行,并管理 JavaScript 和 Objective-C 或 Swift 之间桥接的对象的内存。...每个 JavaScript 上下文(JSContext 对象)都属于一个 JSVirtualMachine。

    6.6K00

    iOS中WKWebView交互使用总结

    configuration:(WKWebViewConfiguration *)configuration 这个方法就够用了,第一个参数不多说,按照通常的使用就可以,第二个参数是对webView的配置对象...:(null_unspecified WKNavigation *)navigation; // 当内容开始返回时调用 - (void)webView:(WKWebView *)webView didCommitNavigation...//WKWebview 禁止长按(超链接、图片、文本...)弹出效果 [self.webView evaluateJavaScript:@"document.documentElement.style.webkitTouchCallout...重点:JS交互 ---- WKWebView的交互方法和之前的UIWebView其实本质上没有什么太大的差别,都是通过发送方法名找到对应的方法执行对应的操作。...messageDic = message.body; [self requestApplyGoods:messageDic[@"trade_sn"]]; } //弹出错误信息

    3.3K40

    iOS中WebKit框架应用与解析 原

    WKUIDelegate:用于交互处理JavaScript中的一些弹出框。 WKBackForwardList:堆栈管理的网页列表。 WKBackForwardListItem:每个网页节点对象。...类是JavaScript传递的对象实例,其中属性如下: //传递的消息主体 @property (nonatomic, readonly, copy) id body; //传递消息的WebView @...property (nullable, nonatomic, readonly, weak) WKWebView *webView; //传递消息的WebView当前页面对象 @property (nonatomic...- (nullable WKNavigation *)reloadFromOrigin; //停止加载 - (void)stopLoading; //执行JavaScript代码 - (void)evaluateJavaScript...JavaScript代码的注入也是通过WKUserContentController来完成的,使用addUserScript:方法来注入JavaScript,其中需要通过WKUserScript类来生成要注入的对象

    2.3K40

    iOS下JS与OC互相调用(二)--WKWebView 拦截URL

    同样的用WKWebView也可以拦截URL,做JS 与OC交互。关于WKWebView与UIWebView的对比,大家请自动百度或者google。...除了代理方法和WKWebView的使用不太一样,关于WKWebView更详尽的讲解和用法,还是自行搜索学习,本文重点还是讲解如何实现JS 与OC 互相调用。...这时候就是OC 调用JS 方法的场景。 WKWebView 提供了一个新的方法evaluateJavaScript:completionHandler:,实现OC 调用JS 等场景。...:completionHandler:没有返回值,JS 执行成功还是失败会在completionHandler 中返回。...4.WKWebView中使用弹窗 在上面提到,如果在WKWebView中使用alert、confirm 等弹窗,就得实现WKWebView的WKUIDelegate中相应的代理方法。

    4.3K50

    iOS14开发-网络

    然后根据这些信息,进行相应的业务逻辑处理,最后通过主机将处理后的数据返回(返回的数据一般为 JSON 字符串)。 App 接收到主机返回的数据,进行解析处理,最后展示到界面上。...响应状态码 状态码 描述 含义 200 Ok 请求成功 400 Bad Request 客户端请求的语法出现错误,服务端无法解析 404 Not Found 服务端无法根据客户端的请求找到对应的资源 500...请求响应过程 JSON JavaScript Object Notation。 一种轻量级的数据格式,一般用于数据交互。 服务端返回给 App 客户端的数据,一般都是 JSON 格式。...{ // 调用JavaScript方法 webView.evaluateJavaScript("sayHello('WebView你好!')")...{ (result, err) in // result是JavaScript返回的值 print(result, err) } } WKScriptMessageHandler

    3.3K30
    领券