苹果发布新的iOS 8 SDK和开发工具
英文原文:Apple Announces New iOS 8 SDK and Developer Tools
在 2014 全球开发者大会上,苹果发布了新的移动操作系统 iOS 8 以及新的 SDK 和开发工具。新发布的苹果软件包括超过 4000 个新 API,其中包括像 HealthKit、HomeKit 和 CloudKit 这样的全新框架,并增强了平台的游戏功能。
- Swift
据 Verge 介绍,Swift 是全球开发者大会上最大的惊喜,InfoQ 最近已经对其进行过报道。Swift 是一门全新的语言,旨在通过支持闭包、多返回值、泛型、以及像 map 和 filter 这样的函数式编程模式获得极强的表现力。在保留 Objective C 的命名参数和引入命名空间的同时,Swift 还支持像类型推断这样的现代编程语言概念。Swift 代码可以在同一个项目中与 Objective C 共存,这使它很容易采用。详细信息可以阅读苹果免费提供的电子书《Swift 编程语言》。
- HealthKit
HealthKit 是一个新框架,它允许应用程序访问有关用户健康的集中式数据。它将允许健身应用程序彼此之间以及与 iOS 8 中包含的新的健康应用程序共享数据。该 API 将允许对健康数据进行用户可配置的访问,如允许营养应用程序为健身应用程序提供关于每天热量消耗的信息。
- HomeKit
HomeKit 也是一个新框架,用于在用户的家中与已连接的设备通信以及控制它们。应用程序使用户能够发现他们家中的设备并配置它们,或者用户可以创建 Action 来控制那些设备。用户可以将 Action 分组,并使用 Siri 进行触发。HomeKit 还定义了一种 HomeKit 外设协议,与家居配置或家居自动化应用程序协同工作的外设可以支持该协议。
- CloudKit
CloudKit 允许应用程序使用用户的苹果 ID 登录到 iCloud,而不需要共享任何私人信息。据 TechCrunch 报道,不允许这样做“对于开发者而言一直是个巨大的痛点,他们中的许多人都被迫转向第三方解决方案,如 Microsoft Azure、Google Cloud Platform 或 Amazon Web Services。”增加“像 CloudKit 身份验证、搜索和通知这样功能”应该非常简单,随手便可引入。
- SpriteKit
SpriteKit 在 iOS 7 中引入,使开发者能够创建 2D 游戏。在 iOS 8 中,苹果对它进行了多项增强,这有助于使游戏中的角色移动更自然,也使得开发者可以更容易地添加力场、检测碰撞以及在他们的游戏中生成新的光影效果。
- SceneKit
SceneKit 是 iOS 8 中的一个新框架,它使开发者能够对游戏场景进行 3D 渲染。据说,它是为休闲 3D 游戏而设计的。SceneKit 包含了一个物理引擎、一个粒子发生器以及编写 3D 物体行为脚本的简单方法。它还与 SpriteKit 完全集成,因此,开发者可以在 3D 游戏中包含 SpriteKit 资产。
- Metal
Metal 是为开发者创建高度沉浸式控制台游戏而构建,它的目标是使开发者能够充分利用 A7 芯片以获得最佳性能。据 Touch Arcade 报道,“iOS 硬件一直有专用的游戏控制台,在这一点上,其缺点是完全没有对硬件的直接访问。开发者在 iOS 上所作的一切都要通过 OpenGL”。Touch Arcade 的报道中写道,多亏有了 Metal,OpenGL 的开销得以降低,“以至于不再是个问题”,与此同时,苹果将渲染性能提高了 10 倍。许多游戏引擎制造商都已经宣布支持 Metal,如 Crytek、Unity 和 Epic Games。
- Touch ID API
Touch ID 是一个目前只在 iPhone 5S 上提供的指纹识别功能。在 iOS 8 中,开发者将首次可以选择使用 Touch ID 登录到第三方应用程序,而不需输入密码。
- PhotoKit
在 iOS 8 中,开发者可以使他们的照片应用程序在 Camera Roll 中直接编辑照片,而不需要先导入。
- Camera API
在 iOS 8 中,除了其它已有的控制功能外,第三方照相机应用程序可以精确控制曝光、聚焦和白平衡。
苹果还随 iOS 8 推出了 Xcode 6 测试版,这是苹果的旗舰开发环境的新版本,它支持 iOS 8 的所有新功能,包括 Swift。Xcode 6 还引入了多项改进:
- 对视图栈中的每一层进行 3D 渲染,使视图调试更容易,而且可以找出剪掉的或重叠的视图;检查布局约束,等等。
- 在 XCTest 单元测试框架中支持性能测试。
- 在 Interface Builder 画布中实时展示 Swift 代码,以便将程序上的变化反映到应用程序的故事板上。
苹果已经为所有已注册的开发者——他们是某个 iOS 开发者计划的成员——提供了 iOS 8 SDK 测试版和 Xcode 6 测试版。
根据苹果的公告,iOS 8 的最终版本预计在今年秋天发布,所有兼容的 iOS 设备可以免费更新。