XCode9新功能官方文档翻译

Xcode 9的新功能

Xcode是用于为Apple TV,Apple Watch,iPad,iPhone和Mac创建应用程序的完整开发人员工具集。Xcode开发环境以tvOS SDK,watchOS SDK,iOS SDK和macOS SDK的形式捆绑Instruments分析工具,Simulator和操作系统框架。

Xcode 9的亮点

Xcode 9包括整体质量改进以及广泛的新功能。

  • 全新编辑。快速,基于结构的编辑器,可让您智能地突出显示和浏览您的代码。包括伟大的Markdown支持。
  • 重构。重构内置于编辑体验之中,并可跨Swift,Objective-C,Interface Builder和许多其他文件类型。
  • 超快速搜索 “查找”导航器会立即返回结果。
  • 调试。通过网络无线调试iOS和tvOS设备,Metal的新调试器以及Xcode中的更多功能。
  • 源代码管理。所有新的源代码管理导航器和集成的支持GitHub帐户,以快速浏览存储库并将您的存储库推送到云端。
  • Xcode服务器内置。连续集成机器人可以在任何具有Xcode 9的Mac上运行,无需安装macOS Server。
  • 新游乐场模板 包括iOS模板,旨在在iPad中的Xcode和Swift Playground中运行良好。
  • 新建系统。Xcode新建构建系统的选择性预览可提高可靠性和性能。

一般

  • 更新了使用plist文件定义文本宏的方式。

    • 为项目中的用户,项目或特定用户定义文本宏。
    • 自定义新的文件头。有关更多信息,请参阅Xcode帮助中的自定义文件标题。
    • 有关更多信息,请参阅Xcode帮助。
  • 更新了索引引擎,包括在编译文件时对其进行索引的能力。

  • 设备窗口被分成用于设备和模拟器的单独的窗格。

资产目录

  • 命名颜色支持。
  • 添加了广泛的应用程序图标。
  • 向App Icon集合增加了一个较大的iOS营销。
  • 添加了保留图像矢量数据以选择动态类型缩放的选项。
  • 增加了对HEIF图像的支持。

建筑与连接

  • 新的Xcode 9 - 新建系统。
    • 添加了一个在Swift中编写的新构建系统的预览。
    • 提供更高的可靠性。
    • 捕获许多项目配置问题。
    • 提高整体构建系统性能。注意,构建系统性能不包括构建系统使用的编译器,链接器和其他工具。

    • 目前可选,并将成为未来版本的Xcode的默认值。
    • 要选择项目或工作区的新构建系统,请选择“文件”>“项目设置”或“文件”>“工作区设置”,然后为构建系统类型选择“新建构建系统(预览)”。
    • 有关与现有项目兼容性的说明,请参阅Xcode发行说明。

功能

  • iOS热点和多路径TCP的新配置。
  • 新的网络配置,包括内容过滤,代理DNS查询以及代理TCP和UDP连接。
  • 用于watchOS的新背景模式用于录音和转弯方向。
  • tvOS背景提取的新模式。

核心ML

  • 新的Xcode 9 - 核心ML编辑器。
    • 为模型生成强类型接口。
    • 用于设备上使用的模型编译。

调试

  • Xcode 9中的新功能 - iOS和tvOS设备的网络调试。

    • 通过WiFi或有线网络调试iOS和tvOS设备。
    • 通过Bonjour连接或输入IP地址。
    • iOS设备需要插入一次才能启用网络调试。
  • 新的Xcode 9 - GPU帧捕获和GPU覆盖。

    • 查看命令缓冲区,附件,资源和调用堆栈。
    • 修改着色器并将更改保存到您的应用程序。
    • 移动序列的时间轴。
    • 检查和修改附件中各个像素的值,包括颜色值,alpha,深度等。
    • 通过最小化纹理带宽,最小化渲染像素的数量,禁用混合阶段,仅显示线框,以及缩放镶嵌数量,来实现渲染状态而不修改代码。
  • 新的Xcode 9 - 未定义的行为消毒剂。

    • 使用Undefined行为消毒剂来查找程序崩溃,意外行为以及与未来版本的Xcode的不兼容性。
    • 检测C语言中的几种类型的未定义行为,如整数溢出,无效的转换和对齐违规。
    • 在方案编辑器的诊断窗格中启用未定义的行为消毒剂。
  • 新的Xcode 9 - 主线程检查器。

    • 检测未在主线程上进行的AppKit,UIKit和WebKit方法调用。
    • 在调试期间自动启用,并且可以在方案编辑器的“诊断”选项卡中禁用。
    • 主线程检查器与Swift和C语言一起使用。
  • 通过深度过滤增强断点导航器。

  • 添加修改断点的可视指示符。
  • 扩展视图调试器以显示视图控制器,并使用SceneKit和SpriteKit视图。
  • 增强iOS电能表。

文档

  • 新的统一浏览器,集成了参考,示例代码和文章。
  • 改进文档搜索。
  • 用于在页面之间导航的新跳转栏。
  • 集成示例代码下载。

仪器

  • 用于在跟踪文档的图形区域中固定图形的新拆分视图。
  • 添加了所有策略,并将策略选择器移动到跟踪文档顶部的新工具栏。
  • 增强型金属调试仪。
  • 金属系统跟踪VR支持查看事件,如合成器活动,姿势查询等

界面生成器

  • 增加了对资产目录中使用命名颜色的支持。
  • 增加了对新边距和基线视图约束的支持。
  • 增加了对汽车布局安全区域指南的支持。
  • 增加了对全屏WatchOS应用程序的支持。

金属2支持

  • Xcode 9中的新功能 - Capture API。

    • 在你的代码中定义明确的捕获边界。
    • 使用新MTLCaptureManager类和新MTLCaptureScope协议来编程设置,管理和触发捕获边界。
    • 使用扩展的Xcode GPU Capture UI手动启动和停止捕获。您还可以使用Xcode来捕获应用程序中定义的API边界。
  • Xcode 9中的新功能 - GPU计数器。

    • 分析有关特定GPU捕获的详细分析指标。在iOS和tvOS中,GPU计数器显示为命令编码器的时间线; 在macOS中,GPU计数器显示为绘制或调度调用的时间线。
    • 检查渲染或计算流水线阶段的运行时性能,如顶点着色器,片段着色器,计算内核等。
    • 比较在每个流水线阶段花费的GPU时间来查找您的性能瓶颈。
  • Xcode 9中的新功能 - GPU备注。

    • 在金属着色语言代码中查找优化机会。
    • 在着色器编辑器中调试特定于设备的运行时问题。
    • 按照直接的解决方案和说明来改进您的代码。
  • Xcode 9中的新功能 - 智能过滤。

    • 通过键入到调试导航器来查找特定的调试信息。当您键入和突出显示匹配的文本(如资源,像素格式,功能名称,对象标签等)时,Xcode会动态显示建议。
    • 通过从预定义的Metal对象菜单中选择选项来过滤搜索结果。
    • 使用多个具有许多匹配条件的过滤器。
  • 新的Xcode 9 - VR支持。

    • 查看VR提交和左眼/右眼提交的表面。
  • 添加纹理检查,以检查渲染目标中各个像素的值,如颜色,alpha,深度等。

  • 添加检查输出顶点属性到缓冲区编辑器。
  • 添加数据提示支持金属对象,如纹理,缓冲区和采样器。

重构

  • 跨Swift,C,Objective-C和C ++文件的全局重命名。
  • 查看所有更改在一个地方。
  • 转换Swift和Objective-C格式之间的方法签名。
  • 根据需要更新属性,getter,setter和合成的iVars。
  • 一个按钮更改。
  • 修复 - 它会自动填充switch语句中的缺失情况,并且一致的协议一致性的强制性方法。
  • 提取所有支持的语言的方法功能,以及其他语言特定的本地重构。

模拟器

  • Xcode 9中的新功能 - 多个并发模拟器。

    • 同时运行多个模拟器。
    • 并行运行更多测试。
    • 测试同步和其他多设备工作流程。
  • iOS和WatchOS模拟器的新Chrome包括硬件控件,并允许轻松拖动和调整模拟设备的大小。

  • 从地图,照片和Safari与模拟器共享信息。
  • 添加了关闭窗口或退出模拟器之后运行模拟器的选项,以便与命令行工具的simctl命令更好地集成xcrun。
  • 录制模拟器的视频。
  • 选择帮助>模拟器帮助获取帮助。

源代码管理

  • 用于查看当前工作区的分支,标签和远程存储库的新的源代码管理导航器。
  • 新的源代码管理检查器显示所选导航器项目的详细信息。
  • 分支历史的新编辑器,包括一个方便导航的跳转杆。
  • 文件差异的新的并行编辑器。
  • 更容易和更快地访问常见任务。
  • GitHub帐户集成,方便浏览和一键创建项目和相关联的GitHub存储库。

源编辑

  • 新的Xcode 9 - 所有新的源代码编辑器。
  • 更快更多功能查找和更换。
  • 快速滚动任何大小的文件。
  • 直接操纵代码结构,如令牌和块。
  • 重新设计源代码管理的集成。
  • 重新设计了错误和警告消息的显示。
  • 支持Markdown。

迅速

  • Xcode 9中的新功能 - Swift 4。
    • Swift 4和Swift 3,Swift 4和Swift 3目标的一个编译器可以在同一个项目中编译。
    • 改进的迁移者体验,只支持将选定目标迁移到Swift 4。
    • 更快的通用代码和减少的代码大小。

测试

  • 新的Xcode 9 - 并行设备测试。
  • 向XCTest添加了新的API。
    • 控制和捕获截图。
    • 集体考试活动。
    • 测试附件。
    • 清理块中的清理测试状态。
  • 在一个UI测试中定位多个应用。
  • 使用指定的语言和区域运行测试。

Xcode服务器

  • Xcode 9中新增 - 内置Xcode服务器。

    • 用于配置Xcode Server和设置Bot权限的首选项中的“新建服务器和工具”窗格。
  • 增加了对2因素认证的支持。

  • 更新了机器人的功能。
    • 支持自动和手动配置工作流。
    • 传递额外的参数xcodebuild。
    • 在设备和模拟器上并行运行测试。
    • 配置语言和区域进行测试。
    • 发送“所有清除”电子邮件通知。

兼容性

Xcode 9.0需要运行MacOS Sierra 10.12.4或更高版本的Mac。

安装

Xcode 9 beta可以与以前版本的Xcode共存。

Xcode的预发行版本可从developer.apple.com提供给授权的种子开发人员,打包在压缩的XIP文件中。要在beta期间安装Xcode,请下载XIP文件,将其拖到“应用程序”文件夹中,然后双击该文件。XIP文件扩展到位。

注意:  如果您在Safari首选项中启用了“打开”安全“文件下载”,则XIP文件将下载并自动在您的下载文件夹中扩展。在启动它之前,将Xcode-beta拖到“应用程序”文件夹中。

在最终版本中,Xcode通过Mac App Store安装。

开发人员资源

Apple开发人员计划提供对Apple Store,Apple App,iPad,iPhone和iPod touch设备的访问App Store,Mac App Store和Apple TV App Store的其他支持和文档以及用于测试和部署的资源。有关更多信息,请访问Apple开发者计划网站。

访问Apple开发者论坛,讨论有关任何Apple开发者软件,包括预发布产品。
有关最新的安全信息,请访问Apple开发者计划网站

关于SDK和模拟器

软件开发工具包(SDK)是代表特定watchOS,iOS或macOS版本API的框架(库,头和资源)的集合。您的应用程序从SDK获取的大多数功能实际上由主机操作系统提供,这使得正确的基本SDK和操作系统部署目标设置对于应用程序兼容性至关重要。Xcode自动构建最新的SDK并定位到最新的操作系统。

如果您的应用程序不需要最新的操作系统功能,则可以使用Xcode项目设置中的“操作系统部署目标”选项将其配置为在先前版本的平台操作系统上运行。如果您的项目是在旧版本的Xcode中创建的,您可以让Xcode更新您的项目。有关此功能的详细信息,请参阅项目现代化。

重要提示:  在将应用程序提交到App Store之前,您必须在运行受支持的目标操作系统版本或版本的设备上进行测试。

自动签名

如果您正在处理尚未更新到当前签名过程的旧项目,则对签名过程的更改可能会阻碍您的开发。

企业和App Store开发人员帐户的推荐方法是在开发和分发期间使用Xcode自动签名代码签名应用程序。有关自动签名的文档,请参阅Xcode帮助。如果您的旧项目未配置为使用自动签名,请阅读技术问答(QA1814)“设置自动配置的Xcode”,以了解可以重新配置Xcode项目的过程。

在使用其他技术之前,应考虑自动签名,但如果您的项目需要手动签名,请在Xcode帮助中搜索“手动签名”以查看当前的手动签名实践。

项目现代化

打开项目时,Xcode对其进行评估,以查看是否应更新任何设置。此功能提供了一个简单的方法来确保您的项目符合最新的SDK和最佳做法。

打开问题导航器以查看是否需要更新项目中的任何内容。您也可以在项目导航器中选择项目,然后选择编辑器>验证设置

如果问题导航器列出了现代化问题,请单击该问题以查看一个对话框,该对话框解释应该进行的更新,并允许您执行任何或所有更新。

单击执行更改后,无论是否选择进行所有更改,Xcode都不会再次显示警告。要重新运行检查,请在项目导航器中选择项目,然后选择编辑器>验证设置。

也可以看看

要了解有关使用Xcode的更多信息,请选择“帮助”>“Xcode帮助”。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值