Introduction to tvOS 10
This article introduces all of the new and modified APIs and features available in tvOS 10 for Xamarin.tvOS developers.
With the new tvOS 10 SDK Apple has included new APIs and services that enable the developer to create new categories of apps and features.
For more information on tvOS 10, please see Apple's tvOS + Apps documentation.
What's New in tvOS 10
Apple has added several new APIs and services in tvOS 10 along with many enhancements to existing features, including:
New User Interface Styles
tvOS 10 now supports both a Dark and Light User Interface theme that all of the build-in UIKit controls will automatically adapt to, based on the user's preferences.
When creating and implementing new custom UI controls, the developer should use the UITraitCollection class to adapt to the user's selected theme.
For more information, please see our New User Interface Styles documentation.
Security and Privacy Enhancements
Apple has made several enhancements to both security and privacy in tvOS 10 that will help the developer improve the security of their apps and ensure the end user's privacy.
As a result, apps running on watchOS 3 (or later) must statically declare their intent to access specific features or user information by entering one or more Privacy Specific Keys in their
Info.plist files that explain to the user why the app wishes to gain access.
Since tvOS 10 shares these changes with iOS 10, please see our iOS 10 Security and Privacy Enhancements guide for more information.
Video Subscriber Account
New for tvOS 10, the Video Subscriber Account framework allows apps that support authenticated streaming or video-on-demand to authenticate with their cable or satellite TV provider using a Single-Sign-in experience for the end user.
tvOS 10 extends the support for extended-range pixel formats and wide-gamut color spaces throughout the system including frameworks such as Core Graphics, Core Image, Metal and AVFoundation. Support for devices with wide color displays is further eased by providing this behavior throughout the entire graphics stack.
UIKit has been modified to work in the new extended sRGB colorspace, making it easier to mix colors in wide color gamuts without significant performance loss.
Apple offers the following best practices when working with wide colors:
UIColornow uses the sRGB color space and will no longer clamp values to the
1.0range. If the app relies on the previous clamp behavior, it will need to be modified for tvOS 10.
- If the app performs custom rendering of
UIImages, use the new UIGraphicsImageRender class to specify the use of the extended-range or standard-range formats.
- When using a low-level API such as Core Graphics or Metal to provide image processing, the app should use an extended range color space and pixel format that supports 16-bit floating point values. Where necessary, the app will have to manually clamp color component values.
- Core Graphics, Core Image and Metal Performance Shaders all provide new methods for converting between the two color spaces.
To find out more, please see our Introduction to Wide Color guide.
Newly Available Existing Frameworks
Several frameworks that were available on iOS (and not tvOS), have been made available for tvOS 10 such as:
Additional Framework Changes
In addition to the major framework changes and additions listed above, Apple has made many additional minor framework changes in tvOS 10.
To find out more, please see our Additional Framework Changes guide.
No APIs or frameworks were deprecated by tvOS 10. See Apple's tvOS 10 API Differences documentation for a complete list of API modifications.
We'd love to hear your thoughts. Choose the type you'd like to provide:
Our feedback system is built on GitHub Issues. Read more on our blog.