Google TV

Google Play Store Publishing Checklist for Google TV

Read the best practices for publishing your app to the Google Play Store.

Google TV Android applications are distributed with the same Google Play Store software as mobile applications, so the same guidelines apply. The overall publishing guidelines for the Google Play Store are described in the topic Preparing for Release.

Project settings

To ensure your app is compiled against the Honeycomb platform API, set your project's minimum SDK level to 11 or higher. To do this in Eclipse, right-click the project in the Project Explorer, select Properties, and then select the Honeycomb API 11 target. To do this from the command line, navigate to your project directory, then edit the file default.properties and ensure that the variable target is set to android-11 or higher.

Code

  1. Ensure that you are using the correct media key codes in your app. To learn more about this, read the section Handling Media Keys.
  2. Verify that all of your UI is navigable via the D-pad. If necessary, add explicit settings for: nextFocusForward (for TAB key), nextFocusDown, nextFocusLeft, nextFocusRight and nextFocusUp in your layout. To learn how to do this, read the section Handling Navigation and Focus.
  3. Ensure that the media formats you're using are supported by Google TV. You can see a list of the supported formats in the topic Supported Media Formats.

Android Manifest

  1. Set the following <uses-sdk> element in your manifest file:
    <uses-sdk 
            android:minSdkVersion="11"  < -- Set the appropriate value for your app -- >
            android:targetSdkVersion="12" />
    
  2. Remove <uses-feature> elements for features that Google TV doesn't have. See the section Unsupported hardware for a list of these features.

    Note: The feature com.google.android.tv is only supported by Google TV. If you use it in a <uses-feature> element in your manifest, your app will only install on a Google TV device. For example, this element will prevent your app from installing on non-Google TV devices:

    <uses-feature android:name="com.google.android.tv" />

    To support other devices, you must specify the following element in your manifest:

    <uses-feature android:name="android.hardware.touchscreen" required="false" />

    Please note that "required = false" doesn't exclude your application from devices which have a physical touch screen, so an app that you want to offer on a on a mobile device and Google TV should declare "required=false".

  3. Ensure that your activities do not request portrait orientation. The Android system warns the user if an activity requires portrait mode, or if code tries to force it to portrait mode at runtime using Activity#setRequestedOrientation.

Layouts and Resources

  1. Remember that for a Google TV device, the display is not exactly 1920x1080 or 1280x720. It may be smaller by as much as 12% because of overscan. This is described in more detail in the section Display resolution guidelines. Test your app with a minimum resolution of 1692x952 (for 1080p) and 1128x634 (for 720p) on the emulator or overscan adjusted to default on Google TV box.
  2. Since the display size may vary from unit to unit, it's best to use dynamic layouts, rather than absolute positioning. You should check your layout on different sized emulator screens. This is described in more detail in the section Layout guidelines.
  3. Specifying your text sizes in scale-independent pixes (sp) or setting the size with the @android:style/TextAppearance.XXXX works well on all devices.
    <TextView style="@android:style/TextAppearance.Small">
    <TextView style="@android:style/TextAppearance.Medium">
    <TextView style="@android:style/TextAppearance.Large">
    

Authentication required

You need to be signed in with Google+ to do that.

Signing you in...

Google Developers needs your permission to do that.