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