What's New in Xcode 9 (original) (raw)

Xcode is the complete developer toolset used to create apps for Apple TV, Apple Watch, iPad, iPhone, and Mac. The Xcode development environment bundles the Instruments analysis tool, Simulator, and the OS frameworks in the form of tvOS SDKs, watchOS SDKs, iOS SDKs, and macOS SDKs.

Highlights of Xcode 9

Xcode 9 includes overall quality improvements as well as extensive new features.

General

Asset Catalogs

Building and Linking

Capabilities

Core ML

Debugging

Documentation

Instruments

Interface Builder

Metal 2 Support

Refactoring

Simulator

Source Control

Source Editing

Swift

Testing

Xcode Server

Compatibility

Xcode 9.0 requires a Mac running macOS Sierra 10.12.4 or later.

Installation

You obtain Xcode 9 from the Mac App Store. It is a free download that installs directly into the Applications folder. By default, Xcode downloads developer documentation in the background for offline reading; it also automatically downloads documentation updates. This behavior can be changed after installation using the Downloads preferences pane.

Developer Resources

The Apple Developer Program provides access to the App Store, Mac App Store, and Apple TV App Store, additional support and documentation, and signing resources for testing and deployment on Apple TV, Apple Watch, iPad, iPhone, and iPod touch devices. For more information, visit the Apple Developer Program website.

Visit Apple Developer Forums for discussions about any Apple developer software, including prerelease products.

For the latest security information, visit Apple security updates.

About SDKs and Simulator

A software development kit (SDK) is a collection of frameworks (libraries, headers, and resources) that represent the API for a specific watchOS, iOS, or macOS version. Most of the functionality your app gets from an SDK is actually provided by the host operating system, which sets the correct base SDK and OS Deployment Target settings that are critical for app compatibility. Xcode automatically builds with the latest SDK and targets the latest OS.

If your app doesn’t require the latest OS features, you can configure it to run on a previous version of the platform operating system by selecting the OS Deployment Target option in the Xcode Project settings. If your project was created in an older version of Xcode, you can let Xcode update your project. For details on this feature, see Project Modernization.

Automatic Signing

Changes to the signing processes may impede your development if you're working on an older project that has not been updated to the current signing process.

The recommended approach for both enterprise and App Store developer accounts is to use automatic signing in Xcode to code sign apps during both development and distribution. See Xcode Help for documentation on automatic signing. If you have an older project that isn't configured to use automatic signing, read Technical Q&A (QA1814) "Setting up Xcode for Automatic Provisioning" to learn how to reconfigure your Xcode project.

Consider automatic signing before using other techniques. If your projects do require manual signing, search for “manually sign” in Xcode Help to review current manual signing practices.

Project Modernization

When you open a project, Xcode evaluates it to see whether any settings should be updated. This feature makes it easy to ensure your projects conform to the latest SDKs and best practices.

Open the issue navigator to see whether anything in your project needs to be updated. You can also select the project in the project navigator, and then choose Editor > Validate Settings.

If the issue navigator lists modernization issues, click the issue to see a dialog that explains the updates that should be made and that lets you perform any or all of them.

After you click Perform Changes, regardless of whether you choose to make all the changes, Xcode does not show the warning again. To rerun the check, select your project in the project navigator and choose Editor > Validate Settings.

See Also

To learn more about using Xcode, choose Help > Xcode Help.