blob: f834493f0725aa1b1d757610875cc40ced7ac932 [file] [log] [blame]
page.title=Publishing TV Apps
page.tags="requirements","usability"
@jd:body
<div id="qv-wrapper">
<div id="qv">
<h2>In this document</h2>
<ol>
<li><a href="#requirements">Publishing Requirements for TV Apps</a>
<ol>
<li><a href="#requirements-manifest">Manifest Requirements</a></li>
<li><a href="#requirements-usability">Usability Requirements</a></li>
</ol>
</li>
<li><a href="#faq">Frequently Asked Questions</a></li>
</ol>
</div>
</div>
<p>
Apps for TV devices can be published like other Android apps. You must prepare your app for
release and then you can publish it through <a href=
"{@docRoot}distribute/googleplay/index.html">Google Play</a>. In order for your app to be
accepted as a TV app in Google Play, it must meet some additional requirements, which are covered
in this document.
</p>
<p class="note">
<strong>Note:</strong> You will not be able to publish apps to TV devices through <a href=
"{@docRoot}distribute/googleplay/index.html">Google Play</a> until Android L SDK is released.
</p>
<h2 id="requirements">Publishing Requirements for TV Apps</h2>
<p>
Your app must provide specific manifest declarations and meet some minimum usability requirements
before it can qualify as TV app on Google Play. Make sure your app meets these requirements to
get your app ready for TV devices.
</p>
<p class="caution">
<strong>Caution:</strong> Your app must meet all of the requirements described in this section in
order to qualify as a TV app on Google Play. If your app does not meet the usability requirements
described below, the Google Play team will contact you through the email address specified in main
<a href="https://play.google.com/apps/publish/">Google Play Developer Console</a> account
associated with the app.
</p>
<h3 id="requirements-manifest">Manifest Requirements</h3>
<p>
Developers who want their apps to be considered for publishing on TV devices <em>must</em>
include a manifest entry that declares an activity which handles the {@code
android.intent.category.LEANBACK_LAUNCHER} intent filter. For more information about including
the required manifest entries, see <a href=
"{@docRoot}preview/tv/start/index.html#tv-activity">Get Started with TV Apps</a>.
</p>
<p class="caution">
<strong>Caution:</strong> If you do not include the <a href=
"{@docRoot}preview/tv/start/index.html#tv-activity">required manifest entries</a> for TV devices,
your app is not considered as a TV app. The app will not be reviewed for the TV app usability
requirements and will not be able to qualify as a TV app on Google Play.
</p>
<h3 id="requirements-usability">Usability Requirements</h3>
<p>
Users bring a different set of expectations when watching TV. Apps for Android TV devices have a
different interaction, look and feel from Android apps on the phone or tablet. How users interact
with TVs (with a remote control device) and how they view them (sitting about 10 feet away),
significantly changes the requirements for what makes a good user experience in an app.
</p>
<p>
The first step toward creating a great experience for users on TV is to review and follow the
<a href="{@docRoot}preview/tv/design/index.html">Design for TV</a> guidelines. These guidelines
provide general directions for designing a TV app as well as some specific implementation
instructions.
</p>
<p>
Apps for TV devices must meet some specific requirements for usability. Only apps that meet the
following usability criteria will qualify as an TV app on Google Play:
</p>
<ul>
<li>App functionality must be navigable using 5-way D-pad controls, unless the app requires a
game controller.
(<a href="{@docRoot}preview/tv/ui/navigation.html#d-pad-navigation">details</a>)
<ul>
<li>If the app requires a game controller, all functionality must be navigable using
standard Android game controller keys.
(<a href="{@docRoot}training/game-controllers/controller-input.html#button">details</a>)
</li>
</ul>
</li>
<li>Layouts used on TV devices must be designed for landscape orientation.
(<a href="{@docRoot}preview/tv/ui/layouts.html#structure">details</a>)</li>
<li>Core text used in TV layouts must be at least 16sp in size and all text must be at least
12sp.</li>
<li>Text and functionality should be placed inside an overscan margin of at least 27dp from the
top and bottom edges and 48dp from the left and right edges of the TV screen.
(<a href="{@docRoot}preview/tv/ui/layouts.html#overscan">details</a>)</li>
<li>Apps that uses full-screen, non-video ads, must ensure that the ads are immediately
dismissible by the user with D-pad controls.</li>
<li>Apps must not depend on having a web browser app on TV devices. Apps can use <a href=
"http://developer.android.com/reference/android/webkit/WebView.html">WebView components</a> to
show web content where needed.</li>
<li>Apps that uses clickable, non-full screen, non-video ads must ensure that the ads do not link
to a web URL. These ads must also not link to an app or game that is not available on TV devices
and, therefore, not available in the Google Play store for TV.</li>
<li>Apps must display correctly on the Android TV launcher by doing the following:
<ul>
<li>Include in the app manifest an intent filter of type {@code ACTION_MAIN} with an intent
category {@code CATEGORY_LEANBACK_LAUNCHER}.
(<a href="{@docRoot}preview/tv/start/index.html#tv-activity">details</a>)
</li>
<li>Provide a 320x180px banner image resource and declare it in the manifest.</li>
<li>If the app is a game, it must set the {@code isGame} property to {@code true} in the
manifest. (<a href="{@docRoot}preview/tv/games/index.html#manifest">details</a>)
</li>
</ul>
</li>
<li>App must not partially obscure other apps. Apps must fill the entire screen and have a
non-transparent background.
</li>
<li>Music and audio apps that continue to play sound after a user has left the app must provide
a <strong>Now Playing</strong> card on the home screen recommendation row so users can easily
control playback. Developers should use the {@code android.media.session.MediaSession} API
to enable this card and link playback to a specific activity.
</li>
<li>Media apps that play video or music content must toggle between play and pause of media
playback when a <a href="{@docRoot}reference/android/view/KeyEvent.html#KEYCODE_MEDIA_PLAY_PAUSE">
play or pause key event</a> is sent during playback.
</li>
<li>Games that use a gamepad in order to play must define gamepad use in the app manifest.
(<a href="{@docRoot}preview/tv/games/index.html#gamepad">details</a>)
</li>
<li>Games that provide in-game instructions for game controllers must show a generic controller
layout that does not include any branding. You can download generic controller artwork from
here: <a href="http://storage.googleapis.com/androiddevelopers/design/android_tv_gamepad_template-2014-10.zip">
android_tv_gamepad_template_2014-10.zip</a>.
</li>
</ul>
<h2 id="faq">Frequently Asked Questions</h2>
<p>
<strong>After I submit my app, how will find out if my app does not meet all the requirements for
TV devices?</strong>
</p>
<p>
If your app does not meet the usability requirements described on this page, the Play Store team
will contact you through the email address specified in main <a href=
"https://play.google.com/apps/publish/">Google Play Developer Console</a> account associated with
the app.
</p>
<p class="caution">
<strong>Caution:</strong> Make sure your app includes the <a href=
"{@docRoot}preview/tv/start/index.html#tv-activity">required manifest entries</a> for TV devices,
otherwise your app will not be considered a TV app and will not be reviewed for TV usability
requirements.
</p>
<p>
<strong>My app targets more than just TV devices. If my app does not meet the TV device
requirements, will my new or updated app still appear on Google Play for phones and
tablets?</strong>
</p>
<p>
Yes. The requirements described above only restrict distribution to the Google Play Store on TV
devices. Distribution to other device types, such as phones, tablets and other devices, is not
affected.
</p>
<p>
<strong>If my app meets the publishing requirements, when will it be available in the Google
Play Store on TV devices?</strong>
</p>
<p>
Apps that meet the requirements for TV will appear in the Google Play Store on TV devices
<em>after</em> the official release of Android L.
</p>