iOS WKWeb​View

来源:互联网 发布:显示器淘宝 编辑:程序博客网 时间:2024/06/01 09:08

iOS 与 web 之间的关系非常复杂,这种复杂关系甚至可以追溯到几十年前系统建立初期。

其实现在很难说清第一代 iPhone 横空出世是一件多么困难的事情。我们现今司空见惯的触摸屏在当时只是诸多方案中的一种。最早期的产品原型是物理键盘、触摸屏、触控笔的结合,屏幕尺寸才是 5” x 7”。甚至当时 iPod 的轮子都是一个严肃的备选方案。

但最最重要的决定或许都是由软件而非硬件决定的。

iPhone 应该如何运行软件呢?像 OS X 上的应用程序,或者 web 页面,以及 Safari 都应该如何运行起来呢?仿照 OS X 去构建 iPhone OS 的方法已经广泛地被大家熟知了,这种方法到今天也留下了不少争议。

我们来回忆一下 Steve Jobs 2007 年 WWDC keynote 上这句臭名昭著的话:

这里写图片描述

Web 一直是 iOS 系统上的二级公民(讽刺的是,其实现今移动网页响应式设计的出现大多是 iPhone 推动的)。UIWebView 笨重难用,还有内存泄漏,和 Nirtro JavaScript 引擎谈笑风生的 Safari 不知道要比它高到哪里去了。

然而,这所有的一切都会因为 WKWebView 和 WebKit 框架其他部分的出现而发生改变。

WKWebView 是现代 WebKit API 在 iOS 8 和 OS X Yosemite 应用中的核心部分。它代替了 UIKit 中的 UIWebView 和 AppKit 中的 WebView,提供了统一的跨双平台 API。

自诩拥有 60fps 滚动刷新率、内置手势、高效的 app 和 web 信息交换通道、和 Safari 相同的 JavaScript 引擎,WKWebView 毫无疑问地成为了 WWDC 2014 上的最亮点。

UIWebView & UIWebViewDelegate 这个两个东西是如何在 WKWebKit 中被重构成 14 个类 3 个协议的呢。虽然这次的变化确实带来了不少的新功能,但请一定不要因此感到恐慌!

下面请点击链接查看作者原文翻译:

WKWeb​View(http://nshipster.cn/wkwebkit/)

0 0
原创粉丝点击