导语: Safari 11.0 的亮点
-
网络会议。使用WebRTC标准实现对等会议。
-
开发调试工具增强。使用用于测量代码和网络性能的新工具来测试代码。
-
WebAssembly。当使用新的WebAssembly格式编写时,您的Web应用程序更小,加载速度更快。
-
新的 WKWebView API。您的应用程序现在可以捕获快照,处理自定义URL方案,更有效地管理Cookie,并实施Web内容过滤。
Safari 11.0 针对 APP开发人员
WebKit 的 WebView
-
Safari 11.0中的新功能 - 处理自定义方案。
-
添加
WKURLSchemeHandler
了一个用于处理自定义方案的协议。
-
-
Safari 11.0中的新功能 - 更有效的Cookie管理。
-
添加了
WKHTTPCookieStore
一个管理与特定的HTTP cookie相关联的对象WKWebsiteDataStore
。
-
-
Safari 11.0中的新功能 - 支持网页截图(快照)功能。
-
添加
takeSnapshot(with:completionHandler:)
到WKWebView
,一个方法来捕获网页的可见部分的快照。
-
-
Safari 11.0中的新功能 - 基于规则的内容处理。
-
添加了
WKContentRuleList
一个应用于Web内容的规则编辑列表的对象。
-
SafariServices
-
-
添加功能以更改用于关闭视图控制器的按钮的标题,从共享工作表中排除活动项目,并禁用条形图折叠。
-
Safari 11.0 针对网页开发者的新功能
设备媒体调用
-
Safari 11.0中的新功能 - 支持使用WebRTC的实时通信。
-
Safari 11.0中的新功能 - 支持对摄像头和麦克风的访问。
-
增加了对Media Capture API的支持。
-
网站可以调用用户设备的摄像头和麦克风流(需要请求用户权限)。
-
Web API
-
Safari 11.0中新增 - WebAssembly。
-
增加了对WebAssembly的支持,一种快速,高效,便携和安全的代码格式。
-
-
WebCrypto API 新的加密 API。
-
包括新的加密算法,如AES-CFB,AES-GCM,ECDH和PBKDF2。
-
SubtleCrypto不再是前缀,现在是异步的。
-
-
Safari 11.0中新增 - Resource Timing 面板。
-
收集页面上每个资源的所有网络时序数据的详细测量。
-
增加了对资源计时级别2,性能计时级别2和用户计时级别2的支持。
-
为开发人员添加了指标,以确定网络应用程序的客户端性能问题。
-
-
Safari 11.0中的新功能 - 在iOS上拖放。
-
添加了iOS上的DOM事件拖放:
dragstart
,dragenter
,dragover
,dragexit
,dragleave
,dragend
,和drop
。
-
WebAPP
-
更新了WebKit支持主屏幕应用程序。
-
保存到主屏幕的WebAPP 现在支持了现代WebKit的所有功能,例如快速点击,滚动快照和新的可视视口行为。
-
安全和隐私
-
Safari 11.0中的新功能 - 通过防止跨站点跟踪来增强用户隐私。
-
增加了智能跟踪预防功能,可更新默认的Cookie和网站数据策略,以隔离和删除具有跟踪跨站点用户的站点的Cookie和网站数据。
-
-
默认情况下更新了阻止跨源访问的文件限制。
-
file://
除非从“开始”菜单中选择“禁用本地文件限制”,否则现在将禁止CORS和交叉起始访问。
-
文字特征
-
Safari 11.0中新增 - 变量字体。
-
Safari 11.0中新增 - CSS Stroke 笔触支持。
-
从添加描边属性CSS Stroke 规范 包括
paint-order
,stroke-linejoin
,stroke-linecap
,stroke-color
,stroke-width
,和stroke-miterlimit
。
-
Web Inspector 检查器和工具
-
Safari 11.0中的新功能 - WebSocket连接可以 Inspect 了。
-
增加了WebSocket连接和消息的调试。
-
-
Safari 11.0中的新功能 - 从右到左的布局即 RTL 排版 。
-
当首选语言是RTL语言时,更新了Web Inspector UI以使用从右到左(RTL)模式。
-
-
DOM断点和XHR断点。
-
添加断点以暂停脚本执行并显示修改DOM中的元素或使
XMLHttpRequest
资源成为可能的JavaScript 。
-
Safari扩展
-
Safari 11.0中新增内容封锁规则。
-
已添加
if-top-url
,并且unless-top-url
正则表达式与整个主文档URL匹配时执行的新触发器。
-
新的图片格式支持???
iOS11 将使用 HEIF 作为图片格式? High Efficiency Image File Format (HEIF) 但暂时没有消息说支持在 Safari 11 中使用。
@Vickey 可以看出 #Safari 11.0# 里很多 API 还是处于追赶状态。如 WebRTC、WebCrypto、WebAssembly 等,这些在其他高级浏览器里早已实现,而现在终于在 Safari 里实现了。
@Barret李靖:WebAssembly 效率如何?我今天看到几个数字,将代码编译成二进制,整体可以减少 20%~30% 的体积,而运行速度相比 JS,大约快 22 倍,这对 web 游戏开发包括未来的 webVR 来说,简直就是福音。更爽的是,以后可以使用其他语言比如 C/C++/Java 等开发 web 程序。
@leemartin 一个简单的 WebRTC Demo via
原文:https://developer.apple.com/library/content/releasenotes/General/WhatsNewInSafari/Safari_11_0/Safari_11_0.html