summaryrefslogtreecommitdiffstats
path: root/docs/html/guide
diff options
context:
space:
mode:
Diffstat (limited to 'docs/html/guide')
-rw-r--r--docs/html/guide/components/intents-common.jd453
-rw-r--r--docs/html/guide/topics/connectivity/usb/host.jd8
-rw-r--r--docs/html/guide/topics/manifest/application-element.jd6
-rw-r--r--docs/html/guide/topics/manifest/data-element.jd5
-rw-r--r--docs/html/guide/topics/manifest/uses-sdk-element.jd9
5 files changed, 19 insertions, 462 deletions
diff --git a/docs/html/guide/components/intents-common.jd b/docs/html/guide/components/intents-common.jd
index 05e3133..964f075 100644
--- a/docs/html/guide/components/intents-common.jd
+++ b/docs/html/guide/components/intents-common.jd
@@ -50,15 +50,6 @@ page.tags="IntentFilter"
<li><a href="#OpenFile">Open a specific type of file</a></li>
</ol>
</li>
- <li><a href="#Fitness">Fitness</a>
- <ol>
- <li><a href="#TrackRide">Start/Stop a bike ride</a></li>
- <li><a href="#TrackRun">Start/Stop a run</a></li>
- <li><a href="#TrackWorkout">Start/Stop a workout</a></li>
- <li><a href="#ShowHR">Show heart rate</a></li>
- <li><a href="#ShowStepCount">Show step count</a></li>
- </ol>
- </li>
<li><a href="#Local">Local Actions</a>
<ol>
<li><a href="#CallCar">Call a car</a></li>
@@ -1348,391 +1339,6 @@ Framework</a> guide.</p>
-
-
-
-
-
-<h2 id="Fitness">Fitness</h2>
-
-<h3 id="TrackRide">Start/Stop a bike ride</h3>
-
-<!-- Google Now box -->
-<div class="now-box">
- <div class="now-img-cont">
- <a href="#Now">
- <img src="{@docRoot}guide/components/images/voice-icon.png" class="now-img"
- width="30" height="30" alt=""/>
- </a>
- </div>
- <p class="now-title">Google Now</p>
- <ul>
- <li>"start cycling"</li>
- <li>"start my bike ride"</li>
- <li>"stop cycling"</li>
- </ul>
-</div>
-
-<p>To track a bike ride, use the
-<a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#ACTION_TRACK">
-<code>ACTION_TRACK</code></a> action with the <code>"vnd.google.fitness.activity/biking"</code>
-MIME type and set the
-<a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#EXTRA_STATUS">
-<code>EXTRA_STATUS</code></a> extra to
-<a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#STATUS_ACTIVE">
-<code>STATUS_ACTIVE</code></a> when starting and to
-<a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#STATUS_COMPLETED">
-<code>STATUS_COMPLETED</code></a> when stopping.</p>
-
-<dl>
- <dt><b>Action</b></dt>
- <dd><a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#ACTION_TRACK">
- <code>ACTION_TRACK</code></a><dd>
-
- <dt><b>Data URI</b></dt>
- <dd>None</dd>
-
- <dt><b>MIME Type</b></dt>
- <dd><code>"vnd.google.fitness.activity/biking"</code></dd>
-
- <dt><b>Extras</b></dt>
- <dd>
- <dl>
- <dt><a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#EXTRA_STATUS">
- <code>EXTRA_STATUS</code></a></dt>
- <dd>A string with the value <a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#STATUS_ACTIVE">
- <code>STATUS_ACTIVE</code></a> when starting and
- <a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#STATUS_COMPLETED">
- <code>STATUS_COMPLETED</code></a> when stopping.</dd>
- </dl>
- </dd>
-</dl>
-
-
-<p><b>Example intent:</b></p>
-<pre>
-public void startBikeRide() {
- Intent intent = new Intent(FitnessIntents.ACTION_TRACK)
- .setType("vnd.google.fitness.activity/biking")
- .putExtra(FitnessIntents.EXTRA_STATUS, FitnessIntents.STATUS_ACTIVE);
- if (intent.resolveActivity(getPackageManager()) != null) {
- startActivity(intent);
- }
-}
-</pre>
-
-
-<p><b>Example intent filter:</b></p>
-<pre>
-&lt;activity ...>
- &lt;intent-filter>
- &lt;action android:name="vnd.google.fitness.TRACK" />
- &lt;data android:mimeType="vnd.google.fitness.activity/biking" />
- &lt;category android:name="android.intent.category.DEFAULT" />
- &lt;/intent-filter>
-&lt;/activity>
-</pre>
-
-
-
-
-
-<h3 id="TrackRun">Start/Stop a run</h3>
-
-<!-- Google Now box -->
-<div class="now-box">
- <div class="now-img-cont">
- <a href="#Now">
- <img src="{@docRoot}guide/components/images/voice-icon.png" class="now-img"
- width="30" height="30" alt=""/>
- </a>
- </div>
- <p class="now-title">Google Now</p>
- <ul>
- <li>"track my run"</li>
- <li>"start running"</li>
- <li>"stop running"</li>
- </ul>
-</div>
-
-<p>To track a run, use the
-<a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#ACTION_TRACK">
-<code>ACTION_TRACK</code></a> action with the <code>"vnd.google.fitness.activity/running"</code>
-MIME type and set the
-<a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#EXTRA_STATUS">
-<code>EXTRA_STATUS</code></a> extra to
-<a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#STATUS_ACTIVE">
-<code>STATUS_ACTIVE</code></a> when starting and to
-<a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#STATUS_COMPLETED">
-<code>STATUS_COMPLETED</code></a> when stopping.</p>
-
-<dl>
- <dt><b>Action</b></dt>
- <dd><a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#ACTION_TRACK">
- <code>ACTION_TRACK</code></a><dd>
-
- <dt><b>Data URI</b></dt>
- <dd>None</dd>
-
- <dt><b>MIME Type</b></dt>
- <dd><code>"vnd.google.fitness.activity/running"</code></dd>
-
- <dt><b>Extras</b></dt>
- <dd>
- <dl>
- <dt><a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#EXTRA_STATUS">
- <code>EXTRA_STATUS</code></a></dt>
- <dd>A string with the value <a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#STATUS_ACTIVE">
- <code>STATUS_ACTIVE</code></a> when starting and
- <a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#STATUS_COMPLETED">
- <code>STATUS_COMPLETED</code></a> when stopping.</dd>
- </dl>
- </dd>
-</dl>
-
-
-<p><b>Example intent:</b></p>
-<pre>
-public void startRun() {
- Intent intent = new Intent(FitnessIntents.ACTION_TRACK)
- .setType("vnd.google.fitness.activity/running")
- .putExtra(FitnessIntents.EXTRA_STATUS, FitnessIntents.STATUS_ACTIVE);
- if (intent.resolveActivity(getPackageManager()) != null) {
- startActivity(intent);
- }
-}
-</pre>
-
-
-<p><b>Example intent filter:</b></p>
-<pre>
-&lt;activity ...>
- &lt;intent-filter>
- &lt;action android:name="vnd.google.fitness.TRACK" />
- &lt;data android:mimeType="vnd.google.fitness.activity/running" />
- &lt;category android:name="android.intent.category.DEFAULT" />
- &lt;/intent-filter>
-&lt;/activity>
-</pre>
-
-
-
-
-<h3 id="TrackWorkout">Start/Stop a workout</h3>
-
-<!-- Google Now box -->
-<div class="now-box">
- <div class="now-img-cont">
- <a href="#Now">
- <img src="{@docRoot}guide/components/images/voice-icon.png" class="now-img"
- width="30" height="30" alt=""/>
- </a>
- </div>
- <p class="now-title">Google Now</p>
- <ul>
- <li>"start a workout"</li>
- <li>"track my workout"</li>
- <li>"stop workout"</li>
- </ul>
-</div>
-
-<p>To track a workout, use the
-<a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#ACTION_TRACK">
-<code>ACTION_TRACK</code></a> action with the <code>"vnd.google.fitness.activity/other"</code>
-MIME type and set the
-<a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#EXTRA_STATUS">
-<code>EXTRA_STATUS</code></a> extra to
-<a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#STATUS_ACTIVE">
-<code>STATUS_ACTIVE</code></a> when starting and to
-<a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#STATUS_COMPLETED">
-<code>STATUS_COMPLETED</code></a> when stopping.</p>
-
-<dl>
- <dt><b>Action</b></dt>
- <dd><a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#ACTION_TRACK">
- <code>ACTION_TRACK</code></a><dd>
-
- <dt><b>Data URI</b></dt>
- <dd>None</dd>
-
- <dt><b>MIME Type</b></dt>
- <dd><code>"vnd.google.fitness.activity/other"</code></dd>
-
- <dt><b>Extras</b></dt>
- <dd>
- <dl>
- <dt><a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#EXTRA_STATUS">
- <code>EXTRA_STATUS</code></a></dt>
- <dd>A string with the value <a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#STATUS_ACTIVE">
- <code>STATUS_ACTIVE</code></a> when starting and
- <a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#STATUS_COMPLETED">
- <code>STATUS_COMPLETED</code></a> when stopping.</dd>
- </dl>
- </dd>
-</dl>
-
-
-<p><b>Example intent:</b></p>
-<pre>
-public void startWorkout() {
- Intent intent = new Intent(FitnessIntents.ACTION_TRACK)
- .setType("vnd.google.fitness.activity/other")
- .putExtra(FitnessIntents.EXTRA_STATUS, FitnessIntents.STATUS_ACTIVE);
- if (intent.resolveActivity(getPackageManager()) != null) {
- startActivity(intent);
- }
-}
-</pre>
-
-
-<p><b>Example intent filter:</b></p>
-<pre>
-&lt;activity ...>
- &lt;intent-filter>
- &lt;action android:name="vnd.google.fitness.TRACK" />
- &lt;data android:mimeType="vnd.google.fitness.activity/other" />
- &lt;category android:name="android.intent.category.DEFAULT" />
- &lt;/intent-filter>
-&lt;/activity>
-</pre>
-
-
-
-
-<h3 id="ShowHeartRate">Show heart rate</h3>
-
-<!-- Google Now box -->
-<div class="now-box">
- <div class="now-img-cont">
- <a href="#Now">
- <img src="{@docRoot}guide/components/images/voice-icon.png" class="now-img"
- width="30" height="30" alt=""/>
- </a>
- </div>
- <p class="now-title">Google Now</p>
- <ul>
- <li>"what's my heart rate?"</li>
- <li>"what's my bpm?"</li>
- </ul>
-</div>
-
-<p>To show the user's heart rate, use the
-<a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#ACTION_VIEW">
-<code>ACTION_VIEW</code></a> action with the
-<code>"vnd.google.fitness.data_type/com.google.heart_rate.bpm"</code> MIME type.</p>
-
-<dl>
- <dt><b>Action</b></dt>
- <dd><a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#ACTION_VIEW">
- <code>ACTION_VIEW</code></a><dd>
-
- <dt><b>Data URI</b></dt>
- <dd>None</dd>
-
- <dt><b>MIME Type</b></dt>
- <dd><code>"vnd.google.fitness.data_type/com.google.heart_rate.bpm"</code></dd>
-
- <dt><b>Extras</b></dt>
- <dd>None</dd>
-</dl>
-
-
-<p><b>Example intent:</b></p>
-<pre>
-public void showHeartRate() {
- Intent intent = new Intent(FitnessIntents.ACTION_VIEW)
- .setType("vnd.google.fitness.data_type/com.google.heart_rate.bpm");
- if (intent.resolveActivity(getPackageManager()) != null) {
- startActivity(intent);
- }
-}
-</pre>
-
-
-<p><b>Example intent filter:</b></p>
-<pre>
-&lt;activity ...>
- &lt;intent-filter>
- &lt;action android:name="vnd.google.fitness.VIEW" />
- &lt;data android:mimeType="vnd.google.fitness.data_type/com.google.heart_rate.bpm" />
- &lt;category android:name="android.intent.category.DEFAULT" />
- &lt;/intent-filter>
-&lt;/activity>
-</pre>
-
-
-
-
-
-<h3 id="ShowStepCount">Show step count</h3>
-
-<!-- Google Now box -->
-<div class="now-box">
- <div class="now-img-cont">
- <a href="#Now">
- <img src="{@docRoot}guide/components/images/voice-icon.png" class="now-img"
- width="30" height="30" alt=""/>
- </a>
- </div>
- <p class="now-title">Google Now</p>
- <ul>
- <li>"how many steps have I taken?"</li>
- <li>"what's my step count?"</li>
- </ul>
-</div>
-
-<p>To show the user's step count, use the
-<a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#ACTION_VIEW">
-<code>ACTION_VIEW</code></a> action with the
-<code>"vnd.google.fitness.data_type<br/>/com.google.step_count<br/>.cumulative"</code> MIME
-type.</p>
-
-<dl>
- <dt><b>Action</b></dt>
- <dd><a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#ACTION_VIEW">
- <code>ACTION_VIEW</code></a><dd>
-
- <dt><b>Data URI</b></dt>
- <dd>None</dd>
-
- <dt><b>MIME Type</b></dt>
- <dd><code>"vnd.google.fitness.data_type/com.google.step_count.cumulative"</code></dd>
-
- <dt><b>Extras</b></dt>
- <dd>None</dd>
-</dl>
-
-
-<p><b>Example intent:</b></p>
-<pre>
-public void showStepCount() {
- Intent intent = new Intent(FitnessIntents.ACTION_VIEW)
- .setType("vnd.google.fitness.data_type/com.google.step_count.cumulative");
- if (intent.resolveActivity(getPackageManager()) != null) {
- startActivity(intent);
- }
-}
-</pre>
-
-
-<p><b>Example intent filter:</b></p>
-<pre>
-&lt;activity ...>
- &lt;intent-filter>
- &lt;action android:name="vnd.google.fitness.VIEW" />
- &lt;data android:mimeType="vnd.google.fitness.data_type/com.google.step_count.cumulative" />
- &lt;category android:name="android.intent.category.DEFAULT" />
- &lt;/intent-filter>
-&lt;/activity>
-</pre>
-
-
-
-
-
-
-
-
<h2 id="Local">Local Actions</h2>
<h3 id="CallCar">Call a car</h3>
@@ -2695,65 +2301,6 @@ about declaring each intent filter, click on the action description.</p>
<td>{@link android.content.Intent#ACTION_CALL Intent.ACTION_CALL}</td>
</tr>
<tr>
- <td rowspan="5" style="vertical-align:middle">Fitness</td>
- <td>
- <p><a href="#TrackRide">Start/stop a bike ride</a></p>
- <ul class="now-list">
- <li>"start cycling"</li>
- <li>"start my bike ride"</li>
- <li>"stop cycling"</li>
- </ul>
- </td>
- <td><a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#ACTION_TRACK">
- <code>FitnessIntents.ACTION_TRACK</code></a></td>
-</tr>
-<tr>
- <td>
- <p><a href="#TrackRun">Start/stop a run</a></p>
- <ul class="now-list">
- <li>"track my run"</li>
- <li>"start running"</li>
- <li>"stop running"</li>
- </ul>
- </td>
- <td><a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#ACTION_TRACK">
- <code>FitnessIntents.ACTION_TRACK</code></a></td>
-</tr>
-<tr>
- <td>
- <p><a href="#TrackWorkout">Start/stop a workout</a></p>
- <ul class="now-list">
- <li>"start a workout"</li>
- <li>"track my workout"</li>
- <li>"stop workout"</li>
- </ul>
- </td>
- <td><a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#ACTION_TRACK">
- <code>FitnessIntents.ACTION_TRACK</code></a></code></td>
-</tr>
-<tr>
- <td>
- <p><a href="#ShowHeartRate">Show heart rate</a></p>
- <ul class="now-list">
- <li>"what's my heart rate"</li>
- <li>"what's my bpm"</li>
- </ul>
- </td>
- <td><a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#ACTION_VIEW">
- <code>FitnessIntents.ACTION_VIEW</code></a></code></td>
-</tr>
-<tr>
- <td>
- <p><a href="#ShowStepCount">Show step count</a></p>
- <ul class="now-list">
- <li>"how many steps have I taken"</li>
- <li>"what's my step count"</li>
- </ul>
- </td>
- <td><a href="{@docRoot}reference/com/google/android/gms/fitness/FitnessIntents.html#ACTION_VIEW">
- <code>FitnessIntents.ACTION_VIEW</code></a></td>
-</tr>
-<tr>
<td style="vertical-align:middle">Local</td>
<td>
<p><a href="#CallCar">Book a car</a></p>
diff --git a/docs/html/guide/topics/connectivity/usb/host.jd b/docs/html/guide/topics/connectivity/usb/host.jd
index 355dd2d..f957b60 100644
--- a/docs/html/guide/topics/connectivity/usb/host.jd
+++ b/docs/html/guide/topics/connectivity/usb/host.jd
@@ -31,7 +31,7 @@ page.title=USB Host
<li><a href="{@docRoot}resources/samples/USB/AdbTest/index.html">AdbTest</a></li>
<li><a href=
- "{@docRoot}resources/samples/USB/MissileLauncher/index.html">MissleLauncher</a></li>
+ "{@docRoot}resources/samples/USB/MissileLauncher/index.html">MissileLauncher</a></li>
</ol>
</div>
</div>
@@ -283,7 +283,7 @@ while(deviceIterator.hasNext()){
<h3 id="permission-d">Obtaining permission to communicate with a device</h3>
- <p>Before communicating with the USB device, your applicaton must have permission from your
+ <p>Before communicating with the USB device, your application must have permission from your
users.</p>
<p class="note"><strong>Note:</strong> If your application <a href="#using-intents">uses an
@@ -388,7 +388,7 @@ mUsbManager.requestPermission(device, mPermissionIntent);
should have more logic to correctly find the correct interface and endpoints to communicate on
and also should do any transferring of data in a different thread than the main UI thread:</p>
<pre>
-private Byte[] bytes
+private Byte[] bytes;
private static int TIMEOUT = 0;
private boolean forceClaim = true;
@@ -409,7 +409,7 @@ connection.bulkTransfer(endpoint, bytes, bytes.length, TIMEOUT); //do in another
<p>For more information, see the <a href=
"{@docRoot}resources/samples/USB/AdbTest/index.html">AdbTest sample</a>, which shows how to do
asynchronous bulk transfers, and the <a href=
- "{@docRoot}resources/samples/USB/MissileLauncher/index.html">MissleLauncher sample</a>, which
+ "{@docRoot}resources/samples/USB/MissileLauncher/index.html">MissileLauncher sample</a>, which
shows how to listen on an interrupt endpoint asynchronously.</p>
<h3 id="terminating-d">Terminating communication with a device</h3>
diff --git a/docs/html/guide/topics/manifest/application-element.jd b/docs/html/guide/topics/manifest/application-element.jd
index 8a0e837..b5af9c3 100644
--- a/docs/html/guide/topics/manifest/application-element.jd
+++ b/docs/html/guide/topics/manifest/application-element.jd
@@ -449,9 +449,13 @@ href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> developer guide.<
<dt><a name="vmSafeMode"></a>{@code android:vmSafeMode}</dt>
<dd>Indicates whether the app would like the virtual machine (VM) to operate
in safe mode. The default value is {@code "false"}.
-</dd>
+<p> This attribute was added in API level 8 where a value of "true"
+disabled the Dalvik just-in-time (JIT) compiler. </p>
+<p> This attribute was adapted in API level 22 where a value of "true"
+disabled the ART ahead-of-time (AOT) compiler. </p>
+</dd>
</dl></dd>
diff --git a/docs/html/guide/topics/manifest/data-element.jd b/docs/html/guide/topics/manifest/data-element.jd
index ecba508..77f16dd 100644
--- a/docs/html/guide/topics/manifest/data-element.jd
+++ b/docs/html/guide/topics/manifest/data-element.jd
@@ -24,7 +24,7 @@ just a URI, or both a data type and a URI. A URI is specified by separate
attributes for each of its parts:
<p style="margin-left: 2em">
-{@code &lt;scheme>://&lt;host>:&lt;port>/[&lt;path>|&lt;pathPrefix>|&lt;pathPattern>]}</p>
+{@code &lt;scheme>://&lt;host>:&lt;port>[&lt;path>|&lt;pathPrefix>|&lt;pathPattern>]}</p>
<p>
These attributes that specify the URL format are optional, but also mutually dependent:
@@ -115,7 +115,8 @@ the filter.</dd>
<dt><a name="path"></a>{@code android:path}
<br/>{@code android:pathPrefix}
<br/>{@code android:pathPattern}</dt>
-<dd>The path part of a URI. The {@code path} attribute specifies a complete
+<dd>The path part of a URI which must begin with a /.
+The {@code path} attribute specifies a complete
path that is matched against the complete path in an Intent object. The
{@code pathPrefix} attribute specifies a partial path that is matched against
only the initial part of the path in the Intent object. The {@code pathPattern}
diff --git a/docs/html/guide/topics/manifest/uses-sdk-element.jd b/docs/html/guide/topics/manifest/uses-sdk-element.jd
index e5e64e5..3ac87ef 100644
--- a/docs/html/guide/topics/manifest/uses-sdk-element.jd
+++ b/docs/html/guide/topics/manifest/uses-sdk-element.jd
@@ -227,11 +227,16 @@ Versions dashboards page</a>.</p>
<table>
<tr><th>Platform Version</th><th>API Level</th><th>VERSION_CODE</th><th>Notes</th></tr>
+ <tr><td><a href="{@docRoot}about/versions/android-5.1.html">Android 5.1</a></td>
+ <td><a href="{@docRoot}sdk/api_diff/22/changes.html" title="Diff Report">22</a></td>
+ <td>{@link android.os.Build.VERSION_CODES#LOLLIPOP_MR1}</td>
+ <td rowspan="2"><a href="{@docRoot}about/versions/lollipop.html">Platform
+Highlights</a></td></tr>
+
<tr><td><a href="{@docRoot}about/versions/android-5.0.html">Android 5.0</a></td>
<td><a href="{@docRoot}sdk/api_diff/21/changes.html" title="Diff Report">21</a></td>
<td>{@link android.os.Build.VERSION_CODES#LOLLIPOP}</td>
- <td><a href="{@docRoot}about/versions/lollipop.html">Platform
-Highlights</a></td></tr>
+ </tr>
<tr><td style="color:#bbb">Android 4.4W</td>
<td><a href="{@docRoot}sdk/api_diff/20/changes.html" title="Diff Report">20</a></td>