blob: 5426ad76291d7560e215c08c23ae3f6d8fdaaa9e [file] [log] [blame]
page.title=Building TV Apps
page.tags=tv, leanback
helpoutsWidget=true
startpage=true
@jd:body
<div id="tb-wrapper">
<div id="tb">
<h2>Dependencies and Prerequisites</h2>
<ul>
<li>Android 5.0 (API level 21) or higher</li>
</ul>
</div>
</div>
<p>
Android offers a rich user experience that's optimized for apps running on large screen devices,
such as high-definition televisions. Apps on TV offer new opportunities to delight your users
from the comfort of their couch.
</p>
<p>
TV apps use the same structure as those for phones and tablets. This approach means you can
create new TV apps based on what you already know about building apps for Android, or extend your
existing apps to also run on TV devices. However, the user interaction model for TV is
substantially different from phone and tablet devices. In order to make your app successful on TV
devices, you must design new layouts that can be easily understood from 10 feet away, and provide
navigation that works with just a directional pad and a select button.
</p>
<p>
This class describes how to start building apps for TV, including setting up your development
environment, basic requirements for layouts and navigation, as well as guidance on how to handle
hardware features that are not typically available on TV devices.
</p>
<p class="note">
<strong>Note:</strong> You are encouraged to use <a href=
"{@docRoot}sdk/installing/studio.html">Android Studio</a> for building TV apps, because it
provides project setup, library inclusion, and packaging conveniences. This training assumes you
are using Android Studio.
</p>
<h2>Lessons</h2>
<dl>
<dt><a href="{@docRoot}training/tv/start/start.html">
Getting Started with TV Apps</a></dt>
<dd>Learn how to create a new Android Studio project for TV apps or modify your existing
app project to run on TV devices.</dd>
<dt><a href="{@docRoot}training/tv/start/layouts.html">
Building TV Layouts</a></dt>
<dd>Learn the minimum requirements for TV layouts and how to implement them.</dd>
<dt><a href="{@docRoot}training/tv/start/navigation.html">
Creating TV Navigation</a></dt>
<dd>Learn the requirements for TV navigation and how to implement TV-compatible
navigation.</dd>
<dt><a href="{@docRoot}training/tv/start/hardware.html">
Handling TV Hardware</a></dt>
<dd>Learn how to check if your app is running on TV hardware, handle unsupported hardware
features, and manage controller devices.</dd>
</dl>