4d7bc65538
Change-Id: I823812a4fd24021bec906ad856479c92a8d2a759
382 lines
13 KiB
Plaintext
382 lines
13 KiB
Plaintext
page.title=Android 2.3.4 Platform
|
|
sdk.platform.version=2.3.4
|
|
sdk.platform.apiLevel=10
|
|
|
|
|
|
@jd:body
|
|
|
|
<div id="qv-wrapper">
|
|
<div id="qv">
|
|
|
|
<h2>In this document</h2>
|
|
<ol>
|
|
<li><a href="#relnotes">Revisions</a></li>
|
|
<li><a href="#api">API Overview</a></li>
|
|
<li><a href="#openaccessory">Open Accessory Library</a></li>
|
|
<li><a href="#api-level">API Level</a></li>
|
|
<li><a href="#apps">Built-in Applications</a></li>
|
|
<li><a href="#locs">Locales</a></li>
|
|
<li><a href="#skins">Emulator Skins</a></li>
|
|
</ol>
|
|
|
|
<h2>Reference</h2>
|
|
<ol>
|
|
<li><a
|
|
href="{@docRoot}sdk/api_diff/{@sdkPlatformApiLevel}/changes.html">API
|
|
Differences Report »</a> </li>
|
|
</ol>
|
|
|
|
<h2>See Also</h2>
|
|
<ol>
|
|
<li><a href="{@docRoot}sdk/adding-components.html">Adding SDK Components</a></li>
|
|
</ol>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
<p>
|
|
<em>API Level:</em> <strong>{@sdkPlatformApiLevel}</strong></p>
|
|
|
|
<p>Android 2.3.4 is a maintenance release that adds several bug fixes and patches
|
|
to the Android 2.3 platform, without any API changes from Android 2.3.3. Additionally,
|
|
Android 2.3.4 brings support for the Open Accessory API to mobile devices,
|
|
through the optional <a href="#usb">Open Accessory Library</a>. </p>
|
|
|
|
<p>For developers, the Android {@sdkPlatformVersion} platform and the Open
|
|
Accessory Library are available together in the latest version of the Google
|
|
APIs Add-On, a downloadable component for the Android SDK.</p>
|
|
|
|
<p>To get started developing or testing against Android {@sdkPlatformVersion},
|
|
use the Android SDK Manager to download the latest version of the Google APIs
|
|
Add-On into your SDK. For more information, see <a
|
|
href="{@docRoot}sdk/adding-components.html">Adding SDK Components</a>. If you
|
|
are new to Android, <a href="{@docRoot}sdk/index.html">download the SDK Starter
|
|
Package</a> first.</p>
|
|
|
|
<p>For a high-level introduction to Android 2.3, see the <a
|
|
href="{@docRoot}sdk/android-2.3-highlights.html">Platform Highlights</a>.</p>
|
|
|
|
|
|
<h2 id="relnotes">Revisions</h2>
|
|
|
|
<p>The sections below provide notes about successive releases of
|
|
the Android {@sdkPlatformVersion} platform component for the Android SDK, as denoted by
|
|
revision number. To determine what revision(s) of the Android
|
|
{@sdkPlatformVersion} platforms are installed in your SDK environment, refer to
|
|
the "Installed Packages" listing in the Android SDK and AVD Manager.</p>
|
|
|
|
<script type="text/javascript">
|
|
function toggleDiv(link) {
|
|
var toggleable = $(link).parent();
|
|
if (toggleable.hasClass("closed")) {
|
|
//$(".toggleme", toggleable).slideDown("fast");
|
|
toggleable.removeClass("closed");
|
|
toggleable.addClass("open");
|
|
$(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/triangle-opened.png"));
|
|
} else {
|
|
//$(".toggleme", toggleable).slideUp("fast");
|
|
toggleable.removeClass("open");
|
|
toggleable.addClass("closed");
|
|
$(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/triangle-closed.png"));
|
|
}
|
|
return false;
|
|
}
|
|
</script>
|
|
<style>
|
|
.toggleable {
|
|
padding: .25em 1em 0em 1em;
|
|
margin-bottom: 0;
|
|
}
|
|
.toggleme {
|
|
padding: 1em 1em 0 2em;
|
|
line-height:1em;
|
|
}
|
|
.toggleable a {
|
|
text-decoration:none;
|
|
}
|
|
.toggleme a {
|
|
text-decoration:underline;
|
|
}
|
|
.toggleable.closed .toggleme {
|
|
display:none;
|
|
}
|
|
#jd-content .toggle-img {
|
|
margin:0;
|
|
}
|
|
</style>
|
|
|
|
<div class="toggleable opened">
|
|
<a href="#" onclick="return toggleDiv(this)">
|
|
<img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-img" height="9px" width="9px" />
|
|
Android {@sdkPlatformVersion}, Revision 1</a> <em>(May 2011)</em></a>
|
|
<div class="toggleme">
|
|
<dl>
|
|
<dt>Dependencies:</dt>
|
|
<dd>
|
|
<p>Requires SDK Tools r11 or higher.</p>
|
|
</dd>
|
|
|
|
</dl>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<h2 id="api">API Overview</h2>
|
|
|
|
<p>Android 2.3.4 provides the same framework API to applications as Android 2.3.3
|
|
(API level 10). For a summary of the API, see the
|
|
<a href="{@docRoot}sdk/android-2.3.3.html">Android 2.3.3 version notes</a>.</p>
|
|
|
|
|
|
<h2 id="openaccessory">Open Accessory Library</h2>
|
|
|
|
<p><em>Open Accessory</em> is a new capability for integrating
|
|
connected peripherals with applications running on the platform. The capability
|
|
is based on a USB (Universal Serial Bus) stack built into the platform and an
|
|
API exposed to applications. Peripherals that attach to Android-powered devices
|
|
as accessories connect as USB hosts. </p>
|
|
|
|
<p>Open Accessory is introduced in <a
|
|
href="{@docRoot}sdk/android-3.1.html#usb">Android 3.1</a> (API level 12), but is
|
|
made available to devices running Android 2.3.4 by means of an optional external
|
|
library, the Open Accessory Library. The library exposes a framework API that
|
|
lets applications discover, communicate with, and manage a variety of device
|
|
types connected over USB. It also provides the implementation of the API against
|
|
parts of the Android platform that are not directly exposed to applications in
|
|
Android 2.3.4.</p>
|
|
|
|
<p>The Open Accessory Library is optional on any given device. Device
|
|
manufacturers may choose whether to include the Open Accessory Library in their
|
|
products or exclude it. The library is forward-compatible with Android 3.1, so
|
|
applications developed against Android 2.3.4 will run properly on devices
|
|
running Android 3.1, if those devices support USB accessories. </p>
|
|
|
|
<p>The API provided by the Open Accessory Library is based on the Open Accessory
|
|
API provided in Android 3.1. In most areas, you can use the same techniques and
|
|
APIs. However, developing for the Open Accessory Library on Android 2.3.4 differs
|
|
from the standard USB API in these ways:
|
|
|
|
<ul>
|
|
<li>Obtaining a {@link android.hardware.usb.UsbManager} object — To obtain
|
|
a {@link android.hardware.usb.UsbManager} object when using the add-on library,
|
|
use the helper method <code>getInstance()</code> rather than {@link
|
|
android.content.Context#getSystemService(java.lang.String) getSystemService()}
|
|
For example:
|
|
|
|
<pre>UsbManager manager = UsbManager.getInstance(this);</pre></li>
|
|
|
|
<li>Obtaining a {@link android.hardware.usb.UsbAccessory} from a filtered intent
|
|
— When you filter for a connected device or accessory with an intent
|
|
filter, the {@link android.hardware.usb.UsbAccessory} object is contained
|
|
inside the intent that is passed to your application. If you are using the
|
|
add-on library, you can get the {@link android.hardware.usb.UsbAccessory} object
|
|
in the following manner:
|
|
|
|
<pre>UsbAccessory accessory = UsbManager.getAccessory(intent)</pre></li>
|
|
|
|
<li>No USB host support — Android 2.3.4 and the Open Accessory Library do
|
|
not support USB host mode (for example, through {@link
|
|
android.hardware.usb.UsbDevice}), although USB host mode is supported in Android
|
|
3.1. An Android-powered device running Android 2.3.4 can not function as a USB
|
|
host. The library enables the Android-powered device to function as
|
|
a peripheral only, with the connected accessory functioning as USB host
|
|
(through {@link android.hardware.usb.UsbAccessory}).</li>
|
|
</ul>
|
|
|
|
<p>To develop apps using the Open Accessory Library, you need:</p>
|
|
|
|
<ul>
|
|
<li>The latest version of the Android SDK tools</li>
|
|
<li>The latest version of the Google APIs add-on, which includes the library
|
|
itself (for linking)</li>
|
|
<li>An actual hardware device running Android 2.3.4 (or Android 3.1) with USB
|
|
accessories support, for runtime testing against connected devices</li>
|
|
</ul>
|
|
|
|
<p>For a full discussion of how to develop applications that interact with USB
|
|
accessories, please see the related <a
|
|
href="{@docRoot}guide/topics/usb/index.html">developer documentation</a>.</p>
|
|
|
|
<p>Additionally, developers can request filtering on Google Play, such that
|
|
their applications are not available to users whose devices do not provide the
|
|
appropriate accessory support. To request filtering, add the element below
|
|
to the application manifest:</p>
|
|
|
|
<pre><uses-feature
|
|
android:name="android.hardware.usb.accessory"
|
|
android:required="true"></pre>
|
|
|
|
|
|
<h2 id="api-level">API Level</h2>
|
|
|
|
<p>The Android 2.3.4 platform does <em>not</em> increment the API level —
|
|
it uses the same API level as Android 2.3.3, API level 10.
|
|
|
|
<p>To use APIs introduced in API level 10 in your application,
|
|
you need compile the application against the Android library that is provided in
|
|
the latest version of the Google APIs Add-On, which also includes the Open
|
|
Accessory Library.</p>
|
|
|
|
<p>Depending on your needs, you might
|
|
also need to add an <code>android:minSdkVersion="{@sdkPlatformApiLevel}"</code>
|
|
attribute to the <code><uses-sdk></code> element in the application's
|
|
manifest. If your application is designed to run only on Android 2.3.3 and higher,
|
|
declaring the attribute prevents the application from being installed on earlier
|
|
versions of the platform.</p>
|
|
|
|
<p>For more information about how to use API Level, see the <a
|
|
href="{@docRoot}guide/appendix/api-levels.html">API Levels</a> document. </p>
|
|
|
|
<h2 id="apps">Built-in Applications</h2>
|
|
|
|
<p>The system image included in the downloadable platform provides these
|
|
built-in applications:</p>
|
|
|
|
<table style="border:0;padding-bottom:0;margin-bottom:0;">
|
|
<tr>
|
|
<td style="border:0;padding-bottom:0;margin-bottom:0;">
|
|
<ul>
|
|
<li>Browser</li>
|
|
<li>Calculator</li>
|
|
<li>Camera</li>
|
|
<li>Clock</li>
|
|
<li>Contacts</li>
|
|
<li>Custom Locale</li>
|
|
<li>Dev Tools</li>
|
|
<li>Downloads</li>
|
|
<li>Email</li>
|
|
</ul>
|
|
</td>
|
|
<td style="border:0;padding-bottom:0;margin-bottom:0;padding-left:5em;">
|
|
<ul>
|
|
<li>Gallery</li>
|
|
<li>IMEs for Japanese, Chinese, and Latin text input</li>
|
|
<li>Messaging</li>
|
|
<li>Music</li>
|
|
<li>Phone</li>
|
|
<li>Search</li>
|
|
<li>Settings</li>
|
|
<li>Spare Parts (developer app)</li>
|
|
<li>Speech Recorder</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
|
|
<h2 id="locs" style="margin-top:.75em;">Locales</h2>
|
|
|
|
<p>The system image included in the downloadable SDK platform provides a variety of
|
|
built-in locales. In some cases, region-specific strings are available for the
|
|
locales. In other cases, a default version of the language is used. The
|
|
languages that are available in the Android {@sdkPlatformVersion} system
|
|
image are listed below (with <em>language</em>_<em>country/region</em> locale
|
|
descriptor).</p>
|
|
|
|
<table style="border:0;padding-bottom:0;margin-bottom:0;">
|
|
<tr>
|
|
<td style="border:0;padding-bottom:0;margin-bottom:0;">
|
|
<ul>
|
|
<li>Arabic, Egypt (ar_EG)</li>
|
|
<li>Arabic, Israel (ar_IL)</li>
|
|
<li>Bulgarian, Bulgaria (bg_BG)</li>
|
|
<li>Catalan, Spain (ca_ES)</li>
|
|
<li>Czech, Czech Republic (cs_CZ)</li>
|
|
<li>Danish, Denmark(da_DK)</li>
|
|
<li>German, Austria (de_AT)</li>
|
|
<li>German, Switzerland (de_CH)</li>
|
|
<li>German, Germany (de_DE)</li>
|
|
<li>German, Liechtenstein (de_LI)</li>
|
|
<li>Greek, Greece (el_GR)</li>
|
|
<li>English, Australia (en_AU)</li>
|
|
<li>English, Canada (en_CA)</li>
|
|
<li>English, Britain (en_GB)</li>
|
|
<li>English, Ireland (en_IE)</li>
|
|
<li>English, India (en_IN)</li>
|
|
<li>English, New Zealand (en_NZ)</li>
|
|
<li>English, Singapore(en_SG)</li>
|
|
<li>English, US (en_US)</li>
|
|
<li>English, South Africa (en_ZA)</li>
|
|
<li>Spanish (es_ES)</li>
|
|
<li>Spanish, US (es_US)</li>
|
|
<li>Finnish, Finland (fi_FI)</li>
|
|
<li>French, Belgium (fr_BE)</li>
|
|
<li>French, Canada (fr_CA)</li>
|
|
<li>French, Switzerland (fr_CH)</li>
|
|
<li>French, France (fr_FR)</li>
|
|
<li>Hebrew, Israel (he_IL)</li>
|
|
<li>Hindi, India (hi_IN)</li>
|
|
</ul>
|
|
</td>
|
|
<td style="border:0;padding-bottom:0;margin-bottom:0;padding-left:5em;">
|
|
<ul>
|
|
<li>Croatian, Croatia (hr_HR)</li>
|
|
<li>Hungarian, Hungary (hu_HU)</li>
|
|
<li>Indonesian, Indonesia (id_ID)</li>
|
|
<li>Italian, Switzerland (it_CH)</li>
|
|
<li>Italian, Italy (it_IT)</li>
|
|
<li>Japanese (ja_JP)</li>
|
|
<li>Korean (ko_KR)</li>
|
|
<li>Lithuanian, Lithuania (lt_LT)</li>
|
|
<li>Latvian, Latvia (lv_LV)</li>
|
|
<li>Norwegian-Bokmol, Norway(nb_NO)</li>
|
|
<li>Dutch, Belgium (nl_BE)</li>
|
|
<li>Dutch, Netherlands (nl_NL)</li>
|
|
<li>Polish (pl_PL)</li>
|
|
<li>Portuguese, Brazil (pt_BR)</li>
|
|
<li>Portuguese, Portugal (pt_PT)</li>
|
|
<li>Romanian, Romania (ro_RO)</li>
|
|
<li>Russian (ru_RU)</li></li>
|
|
<li>Slovak, Slovakia (sk_SK)</li>
|
|
<li>Slovenian, Slovenia (sl_SI)</li>
|
|
<li>Serbian (sr_RS)</li>
|
|
<li>Swedish, Sweden (sv_SE)</li>
|
|
<li>Thai, Thailand (th_TH)</li>
|
|
<li>Tagalog, Philippines (tl_PH)</li>
|
|
<li>Turkish, Turkey (tr_TR)</li>
|
|
<li>Ukrainian, Ukraine (uk_UA)</li>
|
|
<li>Vietnamese, Vietnam (vi_VN)</li>
|
|
<li>Chinese, PRC (zh_CN)</li>
|
|
<li>Chinese, Taiwan (zh_TW)</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<p class="note"><strong>Note:</strong> The Android platform may support more
|
|
locales than are included in the SDK system image. All of the supported locales
|
|
are available in the <a href="http://source.android.com/">Android Open Source
|
|
Project</a>.</p>
|
|
|
|
<h2 id="skins">Emulator Skins</h2>
|
|
|
|
<p>The downloadable platform includes a set of emulator skins that you can use
|
|
for modeling your application in different screen sizes and resolutions. The
|
|
emulator skins are:</p>
|
|
|
|
<ul>
|
|
<li>
|
|
QVGA (240x320, low density, small screen)
|
|
</li>
|
|
<li>
|
|
WQVGA400 (240x400, low density, normal screen)
|
|
</li>
|
|
<li>
|
|
WQVGA432 (240x432, low density, normal screen)
|
|
</li>
|
|
<li>
|
|
HVGA (320x480, medium density, normal screen)
|
|
</li>
|
|
<li>
|
|
WVGA800 (480x800, high density, normal screen)
|
|
</li>
|
|
<li>
|
|
WVGA854 (480x854 high density, normal screen)
|
|
</li>
|
|
</ul>
|
|
|
|
<p>For more information about how to develop an application that displays
|
|
and functions properly on all Android-powered devices, see <a
|
|
href="{@docRoot}guide/practices/screens_support.html">Supporting Multiple
|
|
Screens</a>.</p>
|