# Android TV apps: remote control and banner

Source: https://saastostore.com/docs/android-tv

The Android TV build turns your website into a TV app that appears in the launcher and works with a remote. The build does the technical part. What decides whether it's a good TV app, and whether Google approves it, is how well your site works without a mouse or a touch screen.

## What the build adds

- An entry in the Android TV launcher
- A banner of 320×180 pixels with your logo and app name
- D-pad navigation: the arrows move between links and buttons, and OK clicks
- Support for phones too: the same file installs on both

> Android TV is built on the native Android build. It can't be made from the Android Build (Web).

## Prepare your site for a remote

Open your site on a computer and put your mouse aside. Move with the Tab key only: that's close to what a remote does. Then fix what gets in the way.

- Use real links and buttons, as `div` elements with a click handler can't get focus.
- Give every focused element a clear style. On a TV, focus is the only cursor.
- Avoid menus that only open on mouse hover.
- Use large text and buttons, for reading from a sofa.
- Keep the main content away from the very edges of the screen.

```css
/* make focus visible from across the room */
a:focus, button:focus, [tabindex]:focus {
  outline: 3px solid #fff;
  outline-offset: 3px;
}
```

To apply a TV layout only inside the app, combine the [SaasToStoreApp marker](https://saastostore.com/docs/javascript-bridge) with a check on the window width.

## The banner

We build the launcher banner from your icon and app name. Names in scripts we can't draw yet, and logos that fail to process, fall back to the logo alone. Your store listing needs its own larger images: a banner of 1280×720 and screenshots of 1920×1080, which the project can generate.

## Test before you submit

1. **Build and install** Launch an Android TV build and install it on a TV, a TV box or the Android TV emulator.
2. **Use only the remote** Open every main page, and check that nothing needs a touch or a mouse.
3. **Test sign-in** Typing on a TV is slow, so make sign-in as short as you can.
4. **Start with an internal test track** It lets you catch problems before Google reviews the TV version.

## Which plugins work on TV

The Android plugins are in the build, but some make little sense on a TV. Haptic feedback answers `not_available`, as most TVs have no vibrator. Check each plugin's result in your code rather than assuming it worked.

## Frequently asked questions

### Will Google approve my TV app?

It depends on your site. Google reviews TV apps for remote control navigation, and a site made for mouse and touch often fails. Test with a remote and start on an internal test track.

### Does it work on Fire TV?

We build for Android TV and Google TV. We haven't tested Fire TV devices, so treat them as unverified.

### Do I need a separate app for phones?

No. The same file works on phones and TVs. Google Play shows it on both once the TV version is approved.

### Is Android TV included in my plan?

SHIP and AGENCY include it, with its own 4 builds in SHIP.
