page.title=TV Apps Checklist
page.tags="tv", "checklist"
page.article=true

@jd:body

<div id="tb-wrapper">
<div id="tb">
  <h2>Checklist sections</h2>
  <ul>
    <li><a href="#leanback">TV Form Factor Support</a></li>
    <li><a href="#design">User Interface Design</a></li>
    <li><a href="#discovery">Search and Content Discovery</a></li>
    <li><a href="#games">Games</a></li>
  </ul>
  <h2>You should also read</h2>
  <ul>
    <li><a href="{@docRoot}distribute/essentials/quality/tv.html">TV App Quality</a></li>
    <li><a href="http://android-developers.blogspot.com/2014/10/material-design-on-android-checklist.html">
      Material Design on Android Checklist</a></li>
    <li><a href="{@docRoot}distribute/tools/launch-checklist.html">
      Launch Checklist</a></li>
  </ul>
</div>
</div>

<p>
  Users enjoy the TV app experience when it is consistent, logical, and predictable.
  They should be able to navigate within your app and throughout Android TV without getting lost or
  having to "reset" the UI and start over. Users appreciate clear, colorful, and functional interfaces
  that make the experience magical. With these ideas in mind, you can create an app that fits nicely
  in Android TV and performs as users expect.
</p>

<p>
  This checklist covers the main aspects of development for both apps and games and provides
  guidelines to ensure that your app provides the best possible experience. Additional considerations
  for games only are covered in the <em>Games</em> section.
</p>

<p>
  For criteria that qualify an Android TV app on Google Play, see
  <a href="{@docRoot}distribute/essentials/quality/tv.html">TV App Quality</a>.
</p>

<h2 id="leanback">TV Form Factor Support</h2>

<p>These checklist items apply to <strong>Games</strong> and <strong>Apps</strong>.</p>

<ol>

<li>
  Identify the main TV activity with the {@link android.content.Intent#CATEGORY_LEANBACK_LAUNCHER}
  filter in the manifest.
  <p>See <a href="{@docRoot}training/tv/start/start.html#tv-activity">Declare a TV Activity</a>.</p>
</li>

<li>
  Provide a home screen banner for each language supported by your app
  <ul>
    <li>Launcher app banner measures 320x180 px</li>
    <li>Banner resource is located in the {@code drawables/xhdpi} directory</li>
    <li>Banner image includes localized text to identify the app.</li>
  </ul>
  <p>See <a href="{@docRoot}training/tv/start/start.html#banner">Provide a home screen banner</a>.</p>
</li>

<li>
  Eliminate requirements for unsupported hardware in your app.
  <p>See <a href="{@docRoot}training/tv/start/hardware.html#declare-hardware-requirements">Declaring hardware requirements for TV</a>.</p>
</li>

<li>
  Ensure permissions do not imply hardware requirements
  <p>See <a href="{@docRoot}training/tv/start/hardware.html#hardware-permissions">Declaring permissions that imply hardware features</a>.</p>
</li>

</ol>


<h2 id="design">User Interface Design</h2>

<p>These checklist items apply to <strong>Games</strong> and <strong>Apps</strong>.</p>

<ol>

<li>
  Provide appropriate layout resources for landscape mode.
  <p>See <a href="{@docRoot}training/tv/start/layouts.html#structure">Build Basic TV Layouts</a>.</p>
</li>

<li>
  Ensure that text and controls are large enough to be visible from a distance.
  <p>See <a href="{@docRoot}training/tv/start/layouts.html#visibility">Build Useable Text and Controls</a>.</p>
</li>

<li>
  Provide high-resolution bitmaps and icons for HDTV screens.
  <p>See <a href="{@docRoot}training/tv/start/layouts.html#density-resources">Manage Layout Resources for TV</a>.</p>
</li>

<li>
  Make sure your icons and logo conform to Android TV specifications.
  <p>See <a href="{@docRoot}design/tv/patterns.html#icons">Manage Layout Resources for TV</a>.</p>
</li>

<li>
  Allow for overscan in your layout.
  <p>See <a href="{@docRoot}training/tv/start/layouts.html#overscan">Overscan</a>.</p>
</li>

<li>
  Make every UI element work with both D-pad and game controllers.
  <p>See <a href="{@docRoot}training/tv/start/navigation.html">Creating Navigation</a>
    and <a href="{@docRoot}training/tv/start/hardware.html#controllers">Handling Controllers</a>.</p>
</li>

<li>
  Change the background image as users browse through content.
  <p>See <a href="{@docRoot}training/tv/playback/browse.html#background">Update the Background</a>.</p>
</li>

<li>
  Customize the background color to match your branding in Leanback fragments.
  <p>See <a href="{@docRoot}training/tv/playback/card.html#background">Customize the Card View</a>.</p>
</li>

<li>
  Ensure that your UI does not require a touch screen.
  <p>See <a href="{@docRoot}training/tv/start/hardware.html#no-touchscreen">Touch screen</a> and
    <a href="{@docRoot}training/tv/start/start.html#no-touchscreen">Declare touch screen not
    required</a>.</p>
</li>

<li>
  Follow guidelines for effective advertising.
  <p>See <a href="{@docRoot}training/tv/start/layouts.html#advertising">Provide Effective Advertising</a>.</p>
</li>

</ol>


<h2 id="discovery">Search and Content Discovery</h2>

<p>These checklist items apply to <strong>Games</strong> and <strong>Apps</strong>.</p>

<ol>

<li>
  Provide search results from your app in the Android TV global search box.
  <p>See <a href="{@docRoot}training/tv/discovery/searchable.html#provide">Provide Data</a>.</p>
</li>

<li>
  Provide TV-specific data fields for search.
  <p>See <a href="{@docRoot}training/tv/discovery/searchable.html#columns">Identify Columns</a>.</p>
</li>

<li>
  Make sure your app presents discovered content in a details screen that lets the user start watching
  the content immediately.
  <p>See <a href="{@docRoot}training/tv/discovery/searchable.html#details">Display Your App in the
    Details Screen</a>.</p>
</li>

<li>
  Put relevant, actionable content and categories on the main screen, making it easy to discover content.
  <p>See <a href="{@docRoot}training/tv/discovery/recommendations.html">Recommending TV Content</a>.</p>
</li>

</ol>


<h2 id="games">Games</h2>

<p>These checklist items apply to <strong>Games</strong>.</p>

<ol>

<li>
  Show your game on the home screen with the {@code isGame} flag in the manifest.
  <p>See <a href="{@docRoot}training/tv/games/index.html#Launcher">Show your game on the home screen</a>.</p>
</li>

<li>
  Make sure game controller support does not depend upon the Start, Select, or Menu buttons (not all
  controllers have these).
  <p>See <a href="{@docRoot}training/tv/games/index.html#control">Input Devices</a>.</p>
</li>

<li>
  Use a generic gamepad graphic (without specific controller branding) to show game button mappings.
  <p>See <a href="{@docRoot}training/tv/games/index.html#ControllerHelp">Show controller instructions</a>.</p>
</li>

<li>
  Check for both ethernet and WiFi connectivity.
  <p>See <a href="{@docRoot}training/tv/games/index.html#networking">Networking</a>.</p>
</li>

<li>
  Provide users with a clean exit.
  <p>See <a href="{@docRoot}training/tv/games/index.html#exit">Exit</a>.</p>
</li>


</ol>
