TV App Integration
The TV app provides global access to favorite, recently played, and recommended movies and television shows from across the system.
Beginning and Resuming Playback
The TV app automatically opens your app and sends it a notification when the user initiates content playback within your app.
Ensure a smooth transition to your app. The TV app fades to black when transitioning to your app and doesn’t show your app’s launch screen. Your app should maintain visual continuity with this transition by immediately presenting its own black screen before starting to play or resume content.
Show the expected content immediately. The user expects the chosen content to begin playing as soon as the transition to your app is complete. Jump right from your app’s black screen into content. Avoid presenting splash screens, detail screens, intro animations, or any other barriers that make it take longer to reach content. This is especially important when resuming playback.
Don’t ask whether the user wants to resume playback. If playback can be resumed, it should automatically do so without prompting for confirmation.
Play or pause playback when people press Space on a connected Bluetooth keyboard. Pressing Space to control media playback is an interaction people expect, regardless of the keyboard they’re using.
Make sure content plays for the correct user. If your app supports multiple user profiles, the TV app can specify a profile when issuing a playback request. Your app should automatically switch to this profile before starting playback. If a playback request doesn’t specify a profile, ask the user to choose one before playback begins so this information can be provided in the future.
If loading takes more than two seconds, consider showing a single, black loading screen with a centered activity spinner and no surrounding content.
Avoid loading screens whenever possible. A loading screen is unnecessary if your content loads quickly.
Start playback as soon as possible. If a loading screen is needed, it should be visible only until enough content has loaded for playback to begin. Continue loading remaining content in the background.
Design black loading screens. Loading screens may appear during the transition to playing content. They should appear black so they blend with the fade-to-black functionality of the TV app.
Minimize content on loading screens. If you must include branding or imagery on a loading screen, do so minimally and in a way that maintains the black background and moves seamlessly to playback.
The user remains in your app after exiting playback, rather than returning to the TV app. This experience shouldn’t cause the user to become disoriented.
Show a contextually relevant screen. When exiting playback, display a detail screen for the content the user was just watching and include an option to resume playback. If a detail screen isn’t available, show a menu that includes the content the user was just watching or your app’s main menu.
Be prepared for an immediate exit. Prepare an exit screen as soon as possible after receiving a playback notification so the user sees it even if they exit immediately after playback begins.
TV Provider Authentication
Many popular TV providers allow people to sign in to their accounts at the system level, eliminating the need to authenticate on an app-by-app basis. If your app requires people to sign in, use TV Provider Authentication to provide the most efficient onboarding experience.
Avoid displaying a sign-out option when people are signed in at the system level. If your app must include a sign-out option, invoking it should prompt people to navigate to Settings > TV Provider to sign out of their account.
Never instruct people to sign out by adjusting privacy controls. The TV provider controls in Settings > Privacy aren’t a sign out mechanism. These settings help people manage the apps that can access their TV provider account.