An Android Television device refers to an Android device implementation that is an entertainment interface for consuming digital media, movies, games, apps, and/or live TV for users sitting about ten feet away (a “lean back” or “10-foot user interface”).
Android device implementations are classified as a Television if they meet all the following criteria:
The additional requirements in the rest of this section are specific to Android Television device implementations.
Non-touch Navigation (Section 7.2.2)
Television device implementations:
Navigation Keys (Section 7.2.3)
Television device implementations:
KEYCODE_BACK
) to the foreground application.Button Mappings (Section 7.2.6.1)
Television device implementations:
android.hardware.gamepad
feature flag.Remote Control (Section 7.2.7)
Television device implementations:
Gyroscope (Section 7.3.4)
If Television device implementations include a gyroscope, they:
Bluetooth (Section 7.4.3)
Television device implementations:
Minimum Memory and Storage (Section 7.6.1)
Television device implementations:
Microphone (Section 7.8.1)
Television device implementations:
Audio Output (Section 7.8.2)
Television device implementations:
android.hardware.audio.output
.Audio Encoding (Section 5.1)
Television device implementations MUST support the following audio encoding:
Video Encoding (Section 5.2)
Television device implementations MUST support the following video encoding:
H-264 (Section 5.2.2)
Television device implementations are:
Video Decoding (Section 5.3)
Television device implementations MUST support the following video decoding:
Television device implementations are STRONGLY RECOMMENDED to support the following video decoding:
H.264 (Section 5.3.4)
If Television device implementations support H.264 decoders, they:
H.265 (HEVC) (Section 5.3.5)
If Television device implementations support H.265 codec and the HD 1080p decoding profile, they:
If Television device implementations support H.265 codec and the UHD decoding profile, then:
VP8 (Section 5.3.6)
If Television device implementations support VP8 codec, they:
If Television device implementations support VP8 codec and support 720p, they:
VP9 (Section 5.3.7)
If Television device implementations support VP9 codec and the UHD video decoding, they:
If Television device implementations support VP9 codec, the 1080p profile and VP9 hardware decoding, they:
Secure Media (Section 5.8)
If device implementations are Android Television devices and support 4K resolution, they:
If Television device implementations don't support 4K resolution, they:
Television device implementations:
Audio Output Volume (Section 5.5.3)
Television device implementations:
Television device implementations:
android.software.leanback
and android.hardware.type.television
.WebView compatibility (Section 3.4.1)
Television device implementations:
android.webkit.Webview
API.Lock Screen Media Control (Section 3.8.10)
If Android Television device implementations support a lock screen,they:
Multi-windows (Section 3.8.14)
Television device implementations:
Accessibility (Section 3.10)
Television device implementations:
[T-SR] MUST support third-party accessibility services.
[T-SR] Android Television device implementations are STRONGLY RECOMMENDED to preload accessibility services on the device comparable with or exceeding functionality of the Switch Access and TalkBack (for languages supported by the preloaded Text-to-speech engine) accessibility services as provided in the talkback open source project.
Text-to-Speech (Section 3.11)
If device implementations report the feature android.hardware.audio.output, they:
[T-SR] STRONGLY RECOMMENDED to include a TTS engine supporting the languages available on the device.
[T-0-1] MUST support installation of third-party TTS engines.
TV Input Framework (Section 3.12)
Television device implementations:
User Experience Consistency (Section 8.1)
For Television device implementations:
File I/O Access Performance (Section 8.2)
Television device implementations:
Power-Saving Modes (Section 8.3)
For Television device implementations:
Power Consumption Accounting (Sections 8.4)
Television device implementations:
uid_cputime
kernel module implementation.adb shell dumpsys batterystats
shell command to the app developer.