20.4 · The focus engine, the remote and the 10-foot UI, and media-first apps

tvOS is not iOS without touch. It is a different product: a remote, a cursor you cannot see, text you read from a sofa, and an app that is almost always playing something.

Mental model. Everything must be reachable by moving focus in four directions, readable from across a room, and fine without background work.

Focus and input

The focus engine, focus guides, the Siri Remote and what UIKit lacks.

  1. How does the tvOS focus engine work: focusable items, preferred focus, focus guides, and SwiftUI’s focusable and FocusState? 20.4.1 · L3
    With no touch and no pointer, the user moves a focus (a highlighted, slightly enlarged element) with swipes on the Siri Remote’s click pad (or a game…
  2. What input and layout rules define a good tvOS interface: the Siri Remote, controllers, the 10-foot UI, and which UIKit APIs are missing? 20.4.2 · L3
    Input. The Siri Remote offers a click pad or touch surface for directional swipes and clicks, a Select (press), Menu/Back, Play/Pause, a TV button and Siri…

Media-first

Playback, background limits, performance and testing.

  1. How do you build a production tvOS media app: AVPlayerViewController, Now Playing, performance on older boxes, limited background execution, and testing with the remote? 20.4.3 · L5
    tvOS apps are media-first: most of the work is browsing a catalogue and playing video well. Use AVPlayerViewController for playback (it provides the standard…

More in Multiplatform Apple