tvOS 9 简介

本文介绍 tvOS 9 中为 Xamarin.tvOS 开发人员提供的所有新增和修改的 API 和功能。

Apple 发布了第 4 代 Apple TV 硬件,它采用了重新设计的触摸式遥控器,运行新的 tvOS 操作系统(基于 iOS 9)。

tvOS 首次向开发人员开放 Apple TV 平台,让你能够创建丰富的沉浸式应用,并通过 Apple TV 内置的 App Store 发布这些应用,这与使用 iTunes App Store 编写和发布 iOS 版应用的体验类似。

如果你熟悉 Xamarin.iOS 开发,那么你应该会发现过渡到 tvOS 相当简单。 大多数 API 和功能是相同的,但许多常见 API 不可用(如 WebKit)。 此外,使用 Siri Remote 会带来一些设计挑战,而在基于触摸屏的 iOS 设备中没有这些挑战。

本指南将介绍 tvOS 9 为 Xamarin.tvOS 开发人员提供的所有新增和修改的 API 和功能。 有关 tvOS 的详细信息,请参阅 Apple 的为新的 Apple TV 进行开发文档。

支持的和不支持的功能

在 Apple TV 上运行的 tvOS 应用具有以下受支持的功能和特性:

  • 应用组
  • 后台模式
  • 数据保护
  • Game Center
  • 游戏控制器
  • iCloud
  • 应用内购买
  • Keychain 共享

以下特性和功能不受支持:

  • Apple Pay
  • 应用沙盒
  • 关联域
  • HealthKit
  • HomeKit
  • 应用间音频
  • Maps
  • 个人 VPN
  • 推送通知
  • 钱包
  • 无线配件配置

有关详细信息,请参阅支持的程序集支持的框架文档。

Apple TV 硬件

新的 Apple TV 具有以下硬件规格:

  • 64 位 A8 处理器
  • 32 GB 或 64 GB 存储
  • 2 GB RAM
  • 10/100 Mbps 以太网
  • WiFi 802.11a/b/g/n/ac
  • 1080p 分辨率
  • HDMI
  • USB C 端口(仅用于开发人员和诊断使用)
  • 新的 Siri Remote 或 Apple TV Remote(基于区域)

Siri Remote

根据区域,提供的 Apple TV Remote 将采用 Siri Remote 和 Apple TV Remote 这两种配置之一。

Siri Remote 目前在以下国家/地区提供:

  • 澳大利亚
  • 加拿大
  • 法国
  • 德国
  • 日本
  • 西班牙
  • 英国
  • 美国

所有其他国家/地区都将获得 Apple TV Remote,它将 Siri 按钮替换为“搜索”按钮,该按钮将显示默认的“搜索”屏幕,其中包含用于搜索的文本输入:

Siri Remote

有关详细信息,请参阅 Siri Remote 和蓝牙控制器文档。

Apple TV 预配

就像针对 iOS 进行开发一样,新的 tvOS 需要根据你已经与 Apple 建立的团队成员身份和签名标识,为开发和分发提供适当的预配配置文件。

要访问 tvOS 功能(如 iCloud KVS 或 CloudKit 数据存储),也需要进行适当的预配。 有关在 Xamarin.tvOS 应用中支持 iCloud 的信息,请参阅我们的资源和数据存储

预配配置文件的创建和安装方式与使用 Xamarin.iOS 应用的方式相同。 因此,有关详细信息,请参阅 iOS 设备预配文档。

Apple TV 应用

新的 Apple TV 硬件和 tvOS 9 支持两种类型的应用:传统应用和客户端服务器应用。

传统应用

传统应用是从 Apple TV App Store 购买的,直接安装在设备上。 这些应用可以是使用与 Xamarin.iOS 应用相同的框架和技术开发的游戏、实用工具或媒体应用。

Apple TV 应用的最大大小为 200 MB,可以使用按需资源额外下载 2 GB 内容。 有关详细信息,请参阅我们的资源和数据存储

请参阅我们的 Hello, tvOSS 快速入门指南,熟悉使用 Xamarin.tvOS 开发 tvOS 应用所需的工具和概念。

客户端服务器应用

除了已安装的传统应用外,Apple TV 还可以使用 Web 技术(HTTPS、XML 和 JavaScript)轻松创建基于 Web 的客户端服务器媒体流式处理应用。 你将使用 Apple 的 TVML 标记语言设计用户界面,并使用 JavaScript 通过 TVMLKit 定义应用的行为。

有关详细信息,请查看 Apple 的 Apple TV 标记语言参考TVJS 框架参考TVMLKit 框架参考关于 HTTP 实时传送视频流Apple TV 的HLS 创作规范文档。

用户界面挑战

与 iOS 或 OS X 不同,Apple TV 没有触摸屏或鼠标,用户无法直接选择应用或其内容并与之交互。 相反,他们使用新的 Siri Remote 或蓝牙游戏控制器来导航应用的用户界面。 有关详细信息,请参阅 Siri Remote 和蓝牙控制器文档。

此外,整体用户体验与倾向于单个用户体验的 iOS 或 Mac 应用截然不同。 借助 Apple TV,用户体验在本质上往往更具有社交性,其中几个人可能坐在沙发上与一个应用交互和彼此互动。 若要设计成功的 Apple TV 应用体验(新应用或移植现有应用),必须考虑到这些更改。

使用焦点和视差图像

如上所述,Xamarin.tvOS 应用程序的用户不会像 iOS 用户那样直接在设备屏幕上点击图像与界面进行交互,而是通过 Siri Remote 在房间的另一端进行间接交互。 为了呈现和处理此用户交互,Apple TV 使用基于焦点的模型。

随着焦点的变化,微妙的动画和效果(如图像上的视差效果)用于清楚地标识当前具有焦点的用户界面项。

如果用户在 Siri Remote 上做出缓慢的圆形手势,重点项目将实时响应此移动。 随着摇摆的发生,一个照亮的希恩应用于其图像,使表面似乎闪耀。 在给定数量的非活动状态后,任何失焦的内容都会变暗,焦点项将增大。

有关详细信息,请参阅我们的使用导航和焦点使用图标和图像文档。

主屏幕

Apple TV 主屏幕显示已安装的所有应用,并提供了一种访问用户首选项的方法:

主屏幕

用户使用焦点在 Siri Remote 上使用触摸手势导航应用图标网格,以选择应用并启动它。 应用图标是你给潜在用户留下深刻印象的第一个机会,它应该让用户一眼就能看出你的应用的目的。

每个应用都必须同时提供其应用图标的小型和大型版本。 安装应用后,Apple TV 主屏幕上将使用小图标。 App Store 将使用大型版本。 大型应用图标应模仿小图标版本的外观。

有关详细信息,请参阅使用图标和图像文档。

顶部展区

如果用户已将 Xamarin.tvOS 应用放置在 Apple TV 主屏幕的顶行上,则当用户选择你的应用时,将显示一个大的顶部展区图像。 该图像应突出显示应用的功能或提供指向其内容的直接链接。

顶部展区

顶部展区图像可以作为单个静态 .png.lsr 文件提供,也可在运行时动态创建它作为单行可聚焦项。

它可以包含一行动态的可聚焦项或一组动态的滚动横幅,而不是显示静态的顶部展区图像。 这两种动态样式都可突出显示应用提供的内容或跳转到其最常用的功能。

有关详细信息,请查看我们的使用图标和图像文档和 Apple 的 TVServices 框架参考,详细了解如何向应用添加顶部展区扩展来提供动态顶部展区内容。