Build TV playback apps

Browsing and playing media files is frequently part of the user experience provided by a TV app. Building such an experience from scratch while making sure that it is fast, fluid, and attractive can be challenging. Whether your app provides access to a small or large media catalog, it is important to let users quickly browse options and get to the content they want.

The Android framework provides classes for building user interfaces for these types of apps with the Leanback androidx library. This library provides a framework of classes for creating an efficient and familiar interface for browsing and playing media files with minimal coding. The classes are designed to be extended and customized, so you can create an experience that is unique to your app.

The pages in this section show you how to build a TV app for browsing and playing media content using the Leanback support libraries for TV.

Topics

UI guidance and the Leanback API
  • Create a catalog browser: learn how to use the Leanback support library to build a browsing interface for media catalogs.
  • Provide a card view: learn how to use the Leanback support library to build a card view for content items.
  • Build a details view: learn how to use the Leanback support library to build a details page for media items.
  • Use Leanback transport controls: learn how to use the Leanback support library to build transport controls for your video player.
  • Playback controls on TV: learn the best practices for creating a consistent playback experience across the platform.
  • Preview videos: learn how your app can render a preview video directly on a surface of the home screen.
  • Ambient Mode: learn about Ambient Mode and how playback apps can respect screen burn issues and energy saving.
  • Add a guided step: learn how to use the Leanback support library to guide a user through a series of decisions.
  • Introduce first-time users to your app: learn how to use the Leanback support library to show first-time users how to get the most out of your app.
Implement a media session
Learn how to use a MediaSession to inform Android TV what's playing in your app and let interactions from outside your app control media.
Display a Now Playing card
Learn how to use a MediaSession to display a Now Playing card on the home screen.
Match content frame rate
Learn how to manage frame rates using the frame rate API.