MelonTeam 移动终端前沿技术的探索者

WWDC2017小结

2017-06-23
maxsezhang
ios

WWDC 2017

硬件

iMac Pro

这款深空灰色的设备被称为至今为止的最强 Mac,它将搭载最高 18 核心的 Intel Xeon 处理器和 AMD Radeon Pro Vega 显卡,单精度和「半精度」运算峰值分别可达 11 Teraflops 和 22 Teraflops。除此之外,它还配备了最高 4TB SSD,在 27 吋的 Retina 5K 屏幕背后有 4 个 Thunderbolt 3 插口和多个 USB 接口。设备内部采用了双风扇设计,散热效率据称可提高 80%。

看到上面这些,你应该也能够踩到 iMac Pro 的价格不会便宜,它的价格最终落在 US$4,999 起,显然瞄准的是专业级的使用者了。

Homepod

Siri智能音箱HomePod。搭载6个麦克风阵列,4英寸低音炮,底部配有7个扬声器阵列,内置Apple A8处理器。

用户可以利用“Hey Siri”唤醒HomePod,获取各种信息。也可以连接其它HomeKit智能家居产品。

iOS 11

文件 App

全新文件 app 会把各类文件汇集在一起。不仅包括iPad 上的文件,还有用户存放在各种app、其他iOS设备、iCloud Drive 和其他云服务中的文件。

相机 App,既是照相机,也是扫码器

iOS 11 进一步让 iPhone 和 iPad 的相机功能提升至一个新高度。它不仅能便捷地读取二维码,还让人像摄影也变得更富表现力。新一代的压缩技术让拍摄的照片在保有和以往相同图像质量的前提下,文件大小只是以往的一半。

焕然一新的 App Store

苹果对 App Store 进行了重新设计,来帮用户发掘自己爱不释手的各类新款 app 和游戏。你还可以查看由专业人士编撰的每日故事、专门的游戏标签页,汇集了各类 app 的列表等等。这可以说是自 app 问世以来,App Store 的一次重大更新。

信息 App

信息 App 抽屉经过重新设计,便于用户打开自己想要的 app。新一代过滤技术可更准确地识别并屏蔽可能的垃圾信息。

Apple ID

现在用户可以将自己的电话号码用作 Apple ID 了。另外Apple ID 的密码规则变得更简单。双重认证也将自动打开以提高安全性。

勿扰模式

iPhone 如果感应到你可能正在开车,就会暂时屏蔽来电、短信和通知,以防分散你的注意力。同时,联系你的人也可以收到自动通知,知道你正在开车。

iOS 11 SDK

要用一句话来评价今年iOS SDK的变化的话,就是小步革新。

ARKit

ARKit 利用单镜头和陀螺仪,在对平面的识别和虚拟物体的稳定上做得相当出色。几乎可以肯定不做最早,只做最好的 Apple 似乎在这一刻回到了舞台上。

ARKit 极大降低了普通开发者玩 AR 的门槛,也是 Apple 现阶段用来抗衡 VR 的选项。而与之相应的,是一套并不很复杂的 API。

开发者需要做的大抵就是将虚拟物体放在屏幕的合适位置,并让物体之间互动。然后利用 Core ML 来对相机内的实际物体进行识别和交互。

Core ML

Core ML 所扮演的角色更多的是将已经训练好的模型转换为 iOS 可以理解的形式,并且将新的数据“喂给”模型,获取输出。

Core ML 在背后驱动了 iOS 的视觉识别的 Vision 框架和 Foundation 中的语义分析相关 API。

Google 或者 Samsung 在 Android AI 上的努力,大多是在自带的应用中集成服务。相比起来,Apple 基于对自己生态和硬件的控制,将更多的选择权交给了第三方开发者。

拖拽

开发者可以对任意 UIView 子类定义拖拽行为。iOS 系统帮助你处理了绝大部分工作,你几乎只需要处理结果。

新的 Navigation title 设计

iOS 11 的大多数系统 app 都采用了新的设计,放大了导航栏的标题字体。如果你想采用这项设计的话也非常简单,设置 navigation bar 的 prefersLargeTitles 即可。

FileProvider 和 FileProviderUI

提供一套类似 Files app 的界面,让你可以获取用户设备上或者云端的文件。相信会成为以后文档相关类 app 的标配。

不再支持 32 位 app

虽然在 beta 1 中依然可以运行 32 位 app,但是 Apple 明确指出了将在后续的 iOS 11 beta 中取消支持。所以如果你想让自己的程序运行在 iOS 11 的设备上,进行 64 位的重新编译是必须步骤。

DeviceCheck

DeviceCheck 允许你通过你的服务器与 Apple 服务器通讯,并为单个设备设置两个 bit 的数据。

简单说,你在设备上用 DeviceCheck API 生成一个 token,然后将这个 token 发给自己的服务器,再由自己的服务器与 Apple 的 API 进行通讯,来更新或者查询该设备的bit值。

PDFKit

这是一个在 macOS 上已经长期存在的框架,但却在 iOS 上姗姗来迟。你可以使用这个框架显示和操作 pdf 文件。

IdentityLookup

开发者利用IdentityLookup可以自己开发一个 app extension 来拦截系统 SMS 和 MMS 的信息。

系统的信息 app 在接到未知的人的短信时,会询问所有开启的过滤扩展,如果扩展表示该消息应当被拦截,那么这则信息将不会传递给用户。

Core NFC

在 iPhone 7 和 iPhone 7 Plus 上提供基础的近场通讯读取功能。只要你有合适的 NFC 标签,手机就可以进行读取。但是考虑到无法后台常驻,实用性就打了折扣。

Auto Fill

从 iCloud Keychain 中获取密码,然后自动填充的功能现在开放给第三方开发者了。

Auto Fill可以在要求输入用户名密码时获取键盘上方的自动填充,帮助用户快速登录。

Xcode

  • 从启动速度、编译速度、搜索和静态分析速度等几个方面都有了极大的提升。
  • 添加了 GitHub 集成,可以进行同局域网的无线部署和调试。
  • 多开模拟器
  • 更多的静态分析
  • 可以在 xcassets 里添加颜色,然后在代码或者 IB 中引用这个颜色

Swift 4.0

Swift 语言仍然是不得不说的一个主题,本次的 Swift 4.0 较之前变化不再那么大,细节上做了很多更优秀的微调。性能得到了很大的优化,甚至对字符串做了特殊的优化,连中文字符串都有 2.5 倍的性能加速,由此可见 Apple 对中国市场的重视已经从产品转而到研发套件上来了。

另外值得一提的是,利用新版的 Xcode 工具 Swift 3.2 可以和 Swift 4.0 进行无缝的切换,保留部分源代码的风格,只区别性能。感觉 Swift 终于可以进入到一种稳定的状态了。


说一说

目录