Docs: Add reference TV App article and update TV app section in TIF article
Bug: 24763218
Change-Id: I2339a8cf316b1985566d438f147974b7c46c1a92
diff --git a/src/devices/tv/images/LiveChannels_Add_channel.png b/src/devices/tv/images/LiveChannels_Add_channel.png
new file mode 100644
index 0000000..011fbae
--- /dev/null
+++ b/src/devices/tv/images/LiveChannels_Add_channel.png
Binary files differ
diff --git a/src/devices/tv/images/LiveChannels_channel_list.png b/src/devices/tv/images/LiveChannels_channel_list.png
new file mode 100644
index 0000000..5fccd42
--- /dev/null
+++ b/src/devices/tv/images/LiveChannels_channel_list.png
Binary files differ
diff --git a/src/devices/tv/images/LiveChannels_channel_sources.png b/src/devices/tv/images/LiveChannels_channel_sources.png
new file mode 100644
index 0000000..0f7e6d8
--- /dev/null
+++ b/src/devices/tv/images/LiveChannels_channel_sources.png
Binary files differ
diff --git a/src/devices/tv/images/LiveChannels_customize_channel-list.png b/src/devices/tv/images/LiveChannels_customize_channel-list.png
new file mode 100644
index 0000000..01cc3ee
--- /dev/null
+++ b/src/devices/tv/images/LiveChannels_customize_channel-list.png
Binary files differ
diff --git a/src/devices/tv/images/LiveChannels_set_up_sources.png b/src/devices/tv/images/LiveChannels_set_up_sources.png
new file mode 100644
index 0000000..07c3bb5
--- /dev/null
+++ b/src/devices/tv/images/LiveChannels_set_up_sources.png
Binary files differ
diff --git a/src/devices/tv/images/LiveChannels_settings.png b/src/devices/tv/images/LiveChannels_settings.png
new file mode 100644
index 0000000..f0a8380
--- /dev/null
+++ b/src/devices/tv/images/LiveChannels_settings.png
Binary files differ
diff --git a/src/devices/tv/images/LiveChannels_sources.png b/src/devices/tv/images/LiveChannels_sources.png
new file mode 100644
index 0000000..a36d28c
--- /dev/null
+++ b/src/devices/tv/images/LiveChannels_sources.png
Binary files differ
diff --git a/src/devices/tv/index.jd b/src/devices/tv/index.jd
index aa26751..54585ed 100644
--- a/src/devices/tv/index.jd
+++ b/src/devices/tv/index.jd
@@ -27,7 +27,7 @@
<img style="float: right; margin: 0px 15px 15px 15px;" src="images/ape_fwk_hal_tv.png" alt="Android TV HAL icon"/>
<p>The Android TV Input Framework (TIF) simplifies delivery of live content to Android TV. The Android TIF provides a standard API for manufacturers to create input modules for controlling Android TV, and enables live TV search and recommendations via metadata published by the TV Input.</p>
-<p>The framework does not seek to implement TV standards or regional requirements, but does makes it easier for device manufacturers to meet regional digital TV broadcast standards without re-implementation. Documentation in this section might also be useful to third-party app developers who want to create custom TV Inputs.</p>
+<p>The framework does not seek to implement TV standards or regional requirements, but does make it easier for device manufacturers to meet regional digital TV broadcast standards without re-implementation. Documentation in this section might also be useful to third-party app developers who want to create custom TV Inputs.</p>
<h2 id="components">Components</h2>
@@ -298,7 +298,7 @@
<p>The system TV App presents live TV content to the user. A reference TV
-App (Live Channels) is provided alongside the Android platform, which
+App (Live TV) is provided alongside the Android platform, which
can be used as-is, customized, extended, or replaced by device manufacturers.
The <a href="https://android.googlesource.com/platform/packages/apps/TV/">source code</a>
is available in the Android Open Source Project, and you can get started with
@@ -349,20 +349,20 @@
installed apps to deliver software channels into the live TV experience. To
ensure a compatible Android device implementation, the system TV App has some
responsibilities regarding surfacing third-party TV inputs and channels to the
-user. The reference Live Channels app provides a compatible implementation; if
+user. The reference Live TV app provides a compatible implementation; if
replacing the system TV App, device manufacturers must ensure their own apps
provide similar compatibility, to meet developer expectations across all
Android TV devices.</p>
<p>The system TV App must surface third-party inputs alongside the device's
-default live TV service (even if the default live TV service is not using TIF).
+default live TV service.
The promise of the developer APIs is that users will be able to find channels
(once installed) within their standard TV experience.</p>
<p>Visual differentiation between built-in channels and third-party channels is
allowed, as defined in the TV App section of the Android CDD.</p>
-<p>The following sections show how the Live Channels application fulfills the CDD
+<p>The following sections show how the Live TV application fulfills the CDD
requirements.</p>
<h4 id=new_channel_setup>New channel setup</h4>
@@ -379,19 +379,41 @@
requires third-party inputs be minimal navigation actions away from the main TV
App.</p>
-<p>The reference Live Channels app provides the Channel Sources menu for accessing
+<p>The reference Live TV app provides the Channel Sources menu for accessing
inputs.</p>
+<img src="images/LiveChannels_settings.png" alt="Go to Settings">
+<p class="img-caption"><strong>Figure 8.</strong> Go to <strong>Settings</strong>.</p>
-<p>See <a href="http://developer.android.com/training/tv/tif/tvinput.html#setup">Define You TV Input Sevice</a>
+<img src="images/LiveChannels_channel_sources.png" alt="Go to Channel source in Settings">
+<p class="img-caption"><strong>Figure 9.</strong> Go to <strong>Channel sources</strong> in Settings.</p>
+
+<img src="images/LiveChannels_sources.png" alt="Select your source from the list.">
+<p class="img-caption"><strong>Figure 10.</strong> Select your source from the list.</p>
+
+<img src="images/LiveChannels_Add_channel.png" alt="Add channels from your source">
+<p class="img-caption"><strong>Figure 11.</strong> Add channels from your source</p>
+
+<p>In addition a notification card is shown at the top of the TV App menu after a new TvInput is installed, to take the user directly to the Setup:</p>
+
+<img src="images/LiveChannels_set_up_sources.png" alt="Notification that shows new channel sources are available.">
+<p class="img-caption"><strong>Figure 12.</strong> Notification that shows new channel sources are available.</p>
+
+<p>If the user takes action through the notification, they can select to set up their sources as seen in Figure 10.</p>
+<p>See <a href="http://developer.android.com/training/tv/tif/tvinput.html#setup">Define Your TV Input Sevice</a>
for developer expectations in this area.</p>
<h4 id=customize_the_channel_list>Customize the channel list</h4>
<p>Device manufacturers may provide a UI to hide certain channels and
-enable users to manage their own EPGs. Live Channels includes this facility.</p>
+enable users to manage their own EPGs. Live TV includes this facility.</p>
+<img src="images/LiveChannels_channel_list.png" alt="Open the channel list in Settings.">
+<p class="img-caption"><strong>Figure 13.</strong> Open the channel list in <strong>Settings</strong>.</p>
+
+<img src="images/LiveChannels_customize_channel-list.png" alt="Customize your channel list.">
+<p class="img-caption"><strong>Figure 14.</strong> Customize your channel list.</p>
<h4 id=epg>EPG</h4>
@@ -409,7 +431,7 @@
<p>Manufacturers must implement the TV App to include search results for global
-search requests in order to ensure the best user experience. Live Channels provides an
+search requests in order to ensure the best user experience. Live TV provides an
implementation (see <a href="https://android.googlesource.com/platform/packages/apps/TV/+/android-live-tv/src/com/android/tv/search/TvProviderSearch.java">com.android.tv.search.TvProviderSearch</a>) which provides results from third-party inputs (required for platform
compatibility) as well as built-in inputs.</p>
@@ -420,7 +442,7 @@
<li> The <a href="{@docRoot}compatibility/android-cdd.pdf">Android CDD</a>
and documented developer APIs are the definitive references.
<li> CTS Verifier exercises the APIs as part of the compatibility testing program.
-Running this against Live Channels may be a useful way to see the EPG,
+Running this against Live TV may be a useful way to see the EPG,
Search, Parental Control, and other requirements in the context of third-party
inputs.
<li> See <a href="http://developer.android.com/training/tv/tif/tvinput.html#setup">Define Your TV Input Service</a>
@@ -492,7 +514,7 @@
microprocessor to receive CEC power on and other commands.</p>
<img src="images/TV_App_CEC_integration.png" alt="CEC integration on Android TV">
-<p class="img-caption"><strong>Figure 8.</strong> CEC integration on Android TV</p>
+<p class="img-caption"><strong>Figure 15.</strong> CEC integration on Android TV</p>
<ol>
<li> The CEC bus receives a command from the currently active source to switch to a
@@ -568,4 +590,4 @@
Android TV.</p>
<img src="images/TV_Input_DVR.png" alt="Digital video recording in Android TV">
-<p class="img-caption"><strong>Figure 9.</strong> Digital video recording in Android TV</p>
+<p class="img-caption"><strong>Figure 16.</strong> Digital video recording in Android TV</p>
diff --git a/src/devices/tv/reference-tv-app.jd b/src/devices/tv/reference-tv-app.jd
index fe8d601..9a42117 100644
--- a/src/devices/tv/reference-tv-app.jd
+++ b/src/devices/tv/reference-tv-app.jd
@@ -2,7 +2,7 @@
@jd:body
<!--
- Copyright 2015 The Android Open Source Project
+ Copyright 2016 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -26,11 +26,11 @@
<p>A TV application that plays live TV content is required for Android TV devices.
-A reference TV application (<a href="https://play.google.com/store/apps/details?id=com.google.android.tv">Live Channels</a>) is provided alongside the Android platform, which can be used as-is,
+A reference TV application (<a href="https://play.google.com/store/apps/details?id=com.google.android.tv">Live TV</a>) is provided alongside the Android platform, which can be used as-is,
customized, extended, or replaced. The <a href="https://android.googlesource.com/platform/packages/apps/TV/">source code</a> is available in the Android Open Source Project.</p>
<p>This article summarizes how to get started with building a system TV App based
-on Live Channels on your Android television device and covers a couple of ways
+on Live TV on your Android television device and covers a couple of ways
to customize the app. (You may extend your TV application to implement device
manufacturer or country-specific features, however this is not in the scope of
the reference TV App.)</p>
@@ -39,13 +39,13 @@
<p>The TV application is a component of the <a href="{@docRoot}devices/tv/">TV Input Framework</a> (TIF) and cannot be used independently of the other components. This means
-that only devices with TIF will be able to run the <a href="https://play.google.com/store/apps/details?id=com.google.android.tv">Live Channels</a> application.</p>
+that only devices with TIF will be able to run the <a href="https://play.google.com/store/apps/details?id=com.google.android.tv">Live TV</a> application.</p>
-<p>The Live Channels application depends on Android APIs. Different branches have
+<p>The Live TV application depends on Android APIs. Different branches have
different dependencies on API levels:</p>
<p class="table-caption" id="table-1">
- <strong>Table 1.</strong> Live Channels branches.</p>
+ <strong>Table 1.</strong> Live TV branches.</p>
<table>
<tr>
<th>Branch</th>
@@ -70,8 +70,8 @@
<h2 id=get_the_source>Get the source</h2>
-<p>To get started, select which version of Live Channels you’d like from Git. The
-instructions below are for the current version of Live Channels, but you can
+<p>To get started, select which version of Live TV you’d like from Git. The
+instructions below are for the current version of Live TV, but you can
easily select an earlier version by appending the version name to the end of
<code>android-live-tv</code> as seen in the table above.</p>
@@ -86,11 +86,11 @@
<h2 id=build>Build</h2>
-<p>To build the Live Channels code, run:</p>
+<p>To build the Live TV code, run:</p>
<pre>
$ . build/envsetup.sh
-$ tapas TV x86
+$ tapas LiveTv x86
$ make LiveTv
</pre>
@@ -98,23 +98,27 @@
<h2 id=push>Push</h2>
-<p>To push Live Channels to your test device:</p>
+<p>To push Live TV to your test device:</p>
<pre>
$ adb install -r -d $OUT/system/priv-app/LiveTv/LiveTv.apk
</pre>
+<p>If the developer wants the LIVE TV app to have system permissions, the first time it
+is installed it needs to be pushed to /system/priv-app with:</p>
+
+<pre>adb push $OUT/system/priv-app/LiveTv/LiveTv.apk /system/priv-app/LiveTv/</pre>
<h2 id=test>Test</h2>
-<p>Once Live Channels is on your device, you should test that it is properly
+<p>Once Live TV is on your device, you should test that it is properly
integrated. In addition to running the <a href="{@docRoot}compatibility/cts/index.html">Compatibility test suite</a> and the <a href="http://source.android.com/compatibility/cts/verifier.html">CTS Verifier tests</a> for the TV app, you can use these tests below:</p>
<h3 id=unit_tests>Unit tests</h3>
-<p>There are unit and functional tests for the Live Channels app. You must have a
+<p>There are unit and functional tests for the Live TV app. You must have a
device (or emulator) connected to run the tests.</p>
<pre>