新增框架
- Core ML:负责简化和集成机器学习的框架
- ARKit:用来创建增强现实 (AR) 应用
- Vision:高速图像处理,主要用于:人脸识别/图像视频显示
Xcode编辑器和编译器:
- Xcode 9 中编辑器进行了重写,支持了对 Swift 代码的重构 ,将 VCS 提到了更重要的位置,并添加了 GitHub 集成,可以进行同局域网的无线部署和调试。
- 新的编译系统使用 Swift 重写,在进行了一些对比以后,编译速度确实有了不小的提升。
Xcode 9 中的索引系统使用了新的引擎。
Named Color(ColorSync)
可以在 xcassets 里添加颜色,然后在代码或者 IB 中引用这个颜色。
拖曳
UITextView 和 UITextField 原生支持拖拽,UICollectionView 和 UITableView 的拖拽有一系列专用的 delegate 来表明拖拽的发生和结束。可以对任意 UIView 子类定义拖拽行为。
Navigation title
iOS 11 的大多数系统 app 都采用了新的设计,放大了导航栏的标题字体。通过设置 navigation bar 的 prefersLargeTitles 实现。
FileProvider 和 FileProviderUI
提供一套类似 Files app 的界面,可以获取用户设备上或者云端的文件。
不再支持 32 位 app
虽然在 Xcode9 beta 1 中依然可以运行 32 位 app,但是 Apple 明确指出了将在后续的 iOS 11 beta 中取消支持。需要对app进行 64 位的重新编译。
DeviceCheck
DeviceCheck 允许通过开发者的服务器与 Apple 服务器通讯,并为单个设备设置两个 bit 的数据。在设备上用 DeviceCheck API 生成一个 token,然后将这个 token 发给开发者的服务器,再由开发者的服务器与 Apple 的 API 进行通讯,来更新或者查询该设备的值。这两个 bit 的数据用来追踪用户比如是否已经领取奖励这类信息。
PDFKit
使用PDFKit这个框架显示和操作pdf文件。
IdentityLookup
可以开发一个 app extension 来拦截系统 SMS 和 MMS 的信息。系统的信息 app 在接到未知的人的短信时,会询问所有开启的过滤扩展,如果扩展表示该消息应当被拦截,那么这则信息将不会传递给你。扩展有机会访问到事先指定的 server 来进行判断 (可以光明正大地获取用户短信内容)。
Core NFC
近场通信初步探索。
Auto Fill
从 iCloud Keychain 中获取密码,然后自动填充的功能现在开放给第三方开发者了。UITextInputTraits 的 textContentType 中添加了 username 和 password,对适合的 text view 或者 text field 的 content type 进行配置,并填写 Info.plist 的相关内容,就可以在要求输入用户名密码时获取键盘上方的自动填充,帮助用户快速登录。
网友评论