summaryrefslogtreecommitdiffstats
path: root/docs/html/sdk/android-2.3-highlights.jd
diff options
context:
space:
mode:
authorDirk Dougherty <ddougherty@google.com>2010-11-11 11:52:05 -0800
committerDirk Dougherty <ddougherty@google.com>2010-11-30 10:54:06 -0800
commit50f8445edd14a21ad86080ff7b204eefdc2c62d5 (patch)
treeaa35e93ac43d495ec8d7d76de46fa353a56c6caf /docs/html/sdk/android-2.3-highlights.jd
parent3e6fb5d66eed34c91b9b056ad2d4c317186476fd (diff)
downloadframeworks_base-50f8445edd14a21ad86080ff7b204eefdc2c62d5.zip
frameworks_base-50f8445edd14a21ad86080ff7b204eefdc2c62d5.tar.gz
frameworks_base-50f8445edd14a21ad86080ff7b204eefdc2c62d5.tar.bz2
Do not merge: Doc change: highlights and SDK version notes for Android 2.3 platform.
Change-Id: I08a2f67d324484ed05b956c540facd69f9028563
Diffstat (limited to 'docs/html/sdk/android-2.3-highlights.jd')
-rw-r--r--docs/html/sdk/android-2.3-highlights.jd442
1 files changed, 442 insertions, 0 deletions
diff --git a/docs/html/sdk/android-2.3-highlights.jd b/docs/html/sdk/android-2.3-highlights.jd
new file mode 100644
index 0000000..f60bf51
--- /dev/null
+++ b/docs/html/sdk/android-2.3-highlights.jd
@@ -0,0 +1,442 @@
+page.title=Android 2.3 Platform Highlights
+
+@jd:body
+
+
+<style type="text/css">
+#jd-content {
+ max-width:1200px;
+}
+#jd-content div.screenshot {
+ float:left;
+ clear:left;
+ padding:15px 30px 15px 0;
+}
+#jd-content div.video {
+ float:right;
+ padding:0 60px 40px;
+ margin-top:-15px;
+}
+#jd-content table.columns {
+ margin:0 0 1em 0;
+}
+#jd-content table.columns td {
+ padding:0;
+}
+#jd-content table.columns td+td {
+ padding:0 2em;
+}
+#jd-content table.columns td img {
+ margin:0;
+}
+#jd-content table.columns td+td>*:first-child {
+ margin-top:-2em;
+}
+.green {
+ color:#8db529;
+ font-weight:bold;
+}
+</style>
+
+<div class="video">
+<object width="278" height="180">
+<param name="movie" value="http://www.youtube.com/v/yAZYSVr2Bhc&hl=en&fs=1&"></param>
+<param name="allowFullScreen" value="true"></param><param name="allowscriptaccess"
+value="always"></param>
+<embed src="http://www.youtube.com/v/yAZYSVr2Bhc&hl=en&fs=1&" type="application/x-shockwave-flash"
+allowscriptaccess="always" allowfullscreen="true" width="278" height="180"></embed>
+</object>
+</div>
+
+<p>The Android 2.3 platform introduces many new and exciting features for
+users and developers. This document provides a glimpse at some of the new user features
+and technologies in Android 2.3. For detailed information about the new developer APIs, see the <a
+href="android-2.3.html#api">Android 2.3 version notes</a>.</p>
+
+<ul>
+ <li><a href="#UserFeatures">New User Features</a></li>
+ <li><a href="#DeveloperApis">New Developer Features</a></li>
+ <li><a href="#PlatformTechnologies">New Platform Technologies</a></li>
+</ul>
+
+
+<h2 id="UserFeatures" style="clear:right">New User Features</h2>
+
+<div>
+<img style="float:right;padding-bottom:2em;" src="images/2.3/home-menu.png" alt="" height="280" />
+<img style="float:right;padding-bottom:2em;" src="images/2.3/home-plain.png" alt="" height="280" />
+
+<h3>UI refinements for simplicity and speed</h3>
+
+<p>The user interface is refined in many ways across the system, making it
+easier to learn, faster to use, and more power-efficient. A simplified
+visual theme of colors against black brings vividness and contrast to the
+notification bar, menus, and other parts of the UI. Changes in menus and
+settings make it easier for the user to navigate and control the features
+of the system and device. </p>
+
+<h3>Faster, more intuitive text input</h3>
+
+<p>The Android soft keyboard is redesigned and optimized for faster text input
+and editing. The keys themselves are reshaped and repositioned for improved
+targeting, making them easier to see and press accurately, even at high speeds.
+The keyboard also displays the current character and dictionary suggestions in a
+larger, more vivid style that is easier to read.</p>
+
+<p>The keyboard adds the capability to correct entered words from suggestions in
+the dictionary. As the user selects a word already entered, the keyboard
+displays suggestions that the user can choose from, to replace the selection.
+The user can also switch to voice input mode to replace the selection. Smart
+suggestions let the user accept a suggestion and then return to correct it
+later, if needed, from the original set of suggestions.</p>
+
+<p>New multitouch key-chording lets the user quickly enter numbers and symbols
+by pressing Shift+&lt;<em>letter</em>&gt; and ?123+&lt;<em>symbol</em>&gt;,
+without needing to manually switch input modes. From certain keys, users can
+also access a popup menu of accented characters, numbers, and symbols by holding
+the key and sliding to select a character.</p>
+</div>
+
+<div style="padding-top:1em;">
+<div style="margin-right:1em;float:left;"><img src="images/2.3/onetouch.png" alt="" height="260" /></div>
+<div style="padding-right:2em;float:left;"><img src="images/2.3/selection.png" alt="" height="160" /></div>
+
+
+<h3>One-touch word selection and copy/paste</h3>
+
+<p>When entering text or viewing a web page, the user can quickly select a word
+by press-hold, then copy to the clipboard and paste. Pressing on a word enters a
+free-selection mode &mdash; the user can adjust the selection area as needed by
+dragging a set of bounding arrows to new positions, then copy the bounded area
+by pressing anywhere in the selection area. For text entry, the user can
+slide-press to enter a cursor mode, then reposition the cursor easily and
+accurately by dragging the cursor arrow. With both the selection and cursor
+modes, no use of a trackball is needed.</p>
+
+</div>
+
+<div style="clear:left">
+<div style="padding-right:2em;float:right;"><img src="images/2.3/running.png" alt="" height="280" /></div>
+<div style="padding-left:1em;float:right;"><img src="images/2.3/power.png" alt="" height="280" /></div>
+
+<h3>Improved power management </h3>
+
+<p>The Android system takes a more active role in managing apps that are keeping
+the device awake for too long or that are consuming CPU while running in the
+background. By managing such apps &mdash; closing them if appropriate &mdash;
+the system helps ensure best possible performance and maximum battery life.</p>
+
+<p>The system also gives the user more visibility over the power being consumed
+by system components and running apps. The Application settings provides an
+accurate overview of how the battery is being used, with details of the usage
+and relative power consumed by each component or application.</p>
+
+<h3>Control over applications</h3>
+
+<p>A shortcut to the Manage Applications control now appears in the Options Menu
+in the Home screen and Launcher, making it much easier to check and manage
+application activity. Once the user enters Manage Applications, a new Running
+tab displays a list of active applications and the storage and memory being used
+by each. The user can read further details about each application and if
+necessary stop an application or report feedback to its developer. </p>
+</div>
+
+<h3>New ways of communicating, organizing</h3>
+
+<p>An updated set of standard applications lets the user take new approaches to
+managing information and relationships. </p>
+
+<div style="padding-top:1em;">
+<div style="padding-right:1.5em;float:left;"><img src="images/2.3/sipcall.png" alt="" height="190" align="left"/><br>
+<img src="images/2.3/ffc.png" alt="" height="190" align="left" style="margin-bottom:1.5em;margin-top:.75em;"/><div></div>
+</div>
+
+<p style="margin-top:1em;margin-bottom:.75em;"><strong>Internet calling</strong></p>
+
+<p>The user can make voice calls over the internet to other users who have SIP
+accounts. The user can add an internet calling number (a SIP address) to any
+Contact and can initiate a call from Quick Contact or Dialer. To use internet
+calling, the user must create an account at the SIP provider of their choice
+&mdash; SIP accounts are not provided as part of the internet calling feature.
+Additionally, support for the platform's SIP and internet calling features on
+specific devices is determined by their manufacturers and associated carriers.
+</p>
+
+<div style="padding-right:1.5em;float:right;;"><img src="images/2.3/nfc.png" alt="" height="190" /> </div>
+
+<p style="margin-top:1.25em;margin-bottom:.75em;"><strong>Near-field communications</strong></p>
+
+<p>An NFC Reader application lets the user read and interact with near-field
+communication (NFC) tags. For example, the user can “touch” or “swipe” an NFC
+tag that might be embedded in a poster, sticker, or advertisement, then act on
+the data read from the tag. A typical use would be to read a tag at a
+restaurant, store, or event and then rate or register by jumping to a web site
+whose URL is included in the tag data. NFC communication relies on wireless
+technology in the device hardware, so support for the platform's NFC features on
+specific devices is determined by their manufacturers.
+</p>
+</div>
+
+<p style="margin-top:1.25em;margin-bottom:.75em;"><strong>Downloads management</strong></p>
+
+<p>The Downloads application gives the user easy access to any file downloaded from
+the browser, email, or another application. Downloads is built on an completely new
+download manager facility in the system that any other applications can use, to
+more easily manage and store their downloads.</p>
+
+<p style="margin-top:1.25em;margin-bottom:.75em;"><strong>Camera</strong></p>
+
+<p>The application now lets the user access multiple cameras on the device,
+including a front-facing camera, if available. </p>
+
+
+<h2 id="DeveloperApis" style="clear:both">New Developer Features</h2>
+
+<p>Android 2.3 delivers a variety of features and APIs that
+let developers bring new types of applications to the Android
+platform.</p>
+
+ <ul>
+<li><a href="#gaming">Enhancements for gaming</a></li>
+<li><a href="#communication">New forms of communication</a></li>
+<li><a href="#multimedia">Rich multimedia</a></li>
+</ul>
+
+<h3 id="gaming">Enhancements for gaming</h3>
+
+<p style="margin-top:.75em;margin-bottom:.75em;"><strong>Performance</strong></p>
+
+<p>Android 2.3 includes a variety of improvements across the system that make
+common operations faster and more efficient for all applications. Of particular
+interest to game developers are:</p>
+
+<ul>
+<li>Concurrent garbage collector &mdash; The Dalivik VM introduces a new,
+concurrent garbage collector that minimizes application pauses, helping to
+ensure smoother animation and increased responsiveness in games and similar
+applications. </li>
+<li>Faster event distribution &mdash; The plaform now handles touch and keyboard
+events faster and more efficiently, minimizing CPU utilization during event
+distribution. The changes improve responsiveness for all applications, but
+especially benefit games that use touch events in combination with 3D graphics
+or other CPU-intensive operations. </li>
+<li>Updated video drivers &mdash; The platform uses updated third-party video
+drivers that improve the efficiency of OpenGL ES operations, for faster overall
+3D graphics performance. </li>
+</ul>
+
+
+<p style="margin-top:1.25em;margin-bottom:.75em;"><strong>Native input and
+sensor events</strong></p>
+
+<p>Applications that use native code can now receive and process input and
+sensor events directly in their native code, which dramatically improves
+efficiency and responsiveness. </p>
+
+<p>Native libraries exposed by the platform let applications handle the same
+types of input events as those available through the framework. Applications
+can receive events from all supported sensor types and can enable/disable
+specific sensors and manage event delivery rate and queueing. </p>
+
+
+<p style="margin-top:1.25em;margin-bottom:.75em;"><strong>Gyroscope and other
+new sensors, for improved 3D motion processing</strong></p>
+
+<p>Android 2.3 adds API support for several new sensor types, including
+gyroscope, rotation vector, linear acceleration, gravity, and barometer sensors.
+Applications can use the new sensors in combination with any other sensors
+available on the device, to track three-dimensional device motion and
+orientation change with high precision and accuracy. For example, a game
+application could use readings from a gyroscope and accelerometer on the device
+to recognize complex user gestures and motions, such as tilt, spin, thrust, and
+slice. </p>
+
+<p style="margin-top:1.25em;margin-bottom:.75em;"><strong>Low-latency native
+audio</strong></p>
+
+<p>The platform provides a software implementation of <a
+href="http://www.khronos.org/opensles/">Khronos OpenSL ES</a>, a standard API
+that gives applications access to powerful audio controls and effects from
+native code. Applications can use the API to manage audio devices and control
+low-latency audio input, output and processing directly from native code</p>
+
+<p style="margin-top:1.25em;margin-bottom:.75em;"><strong>Native graphics
+management</strong></p>
+
+<p>The platform provides an interface to its <a
+href="http://www.khronos.org/egl/">Khronos EGL</a> library, which lets
+applications manage graphics contexts and create and manage OpenGL ES textures
+and surfaces from native code.</p>
+
+
+<p style="margin-top:1.25em;margin-bottom:.75em;"><strong>Native access to
+Activity lifecycle, window management</strong></p>
+
+<p>Native applications can declare a new type of Activity class,
+<code>NativeActivity</code> whose lifecycle callbacks are implemented directly
+in native code. The <code>NativeActivity</code> and its underlying native code
+run in the system just as do other Activities &mdash; they run in the
+application's system process and execute on the application's main UI thread,
+and they receive the same lifecycle callbacks as do other Activities. </p>
+
+<p>The platform also exposes native APIs for managing windows, including the
+ability to lock/unlock the pixel buffer to draw directly into it. Through the
+API, applications can obtain a native window object associated with a framework
+Surface object and interact with it directly in native code.</p>
+
+
+<p style="margin-top:1.25em;margin-bottom:.75em;"><strong>Native access to
+assets, storage</strong></p>
+
+<p>Applications can now access a native Asset Manager API to retrieve
+application assets directly from native code without needing to go through JNI.
+If the assets are compressed, the platform does streaming decompression as the
+application reads the asset data. There is no longer a limit on the size of
+compressed <code>.apk</code> assets that can be read.</p>
+
+<p>Additionally, applications can access a native Storage Manager API to work
+directly with OBB files downloaded and managed by the system. Note that although
+platform support for OBB is available in Android 2.3, development tools for
+creating and managing OBB files will not be available until early 2011.</p>
+
+
+<p style="margin-top:1.25em;margin-bottom:.75em;"><strong>Robust native
+development environment</strong></p>
+
+<p>The Android NDK (r5 or higher) provides a complete set of tools, toolchains,
+and libraries for developing applications that use the rich native environment
+offered by the Android 2.3 platform. For more information or to download the
+NDK, please see the <a
+href="http://developer.android.com/sdk/ndk/index.html">Android&nbsp;NDK</a>
+page. </p>
+
+
+<h3 id="communication">New forms of communication</h3>
+
+<p style="margin-top:.75em;margin-bottom:.75em;"><strong>Internet
+telephony</strong></p>
+
+<p>Developers can now add SIP-based internet telephony features to their
+applications. Android 2.3 includes a full SIP protocol stack and integrated call
+management services that let applications easily set up outgoing and incoming
+voice calls, without having to manage sessions, transport-level communication,
+or audio record or playback directly. </p>
+
+<p>Support for the platform's SIP and internet calling features on specific
+devices is determined by their manufacturers and associated carriers.</p>
+
+
+<p style="margin-top:1.25em;margin-bottom:.75em;"><strong>Near Field
+Communications (NFC)</strong></p>
+
+<p>The platform's support for Near Field Communications (NFC) lets developers
+get started creating a whole new class of applications for Android. Developers
+can create new applications that offer proximity-based information and services
+to users, organizations, merchants, and advertisers. </p>
+
+<p>Using the NFC API,
+applications can respond to NFC tags “discovered” as the user “touches” an
+NFC-enabled device to elements embedded in stickers, smart posters, and even
+other devices. When a tag of interest is collected, applications can respond to
+the tag, read messages from it, and then store the messages, prompting
+the user as needed. </p>
+
+<p>NFC communication relies on wireless technology in the device hardware, so
+support for the platform's NFC features on specific devices is determined by
+their manufacturers.</p>
+
+
+<h3 id="multimedia">Rich multimedia</h3>
+
+<p style="margin-top:.75em;margin-bottom:.75em;"><strong>Mixable audio
+effects</strong></p>
+
+<p>A new audio effects API lets developers easily create rich audio environments
+by adding equalization, bass boost, headphone virtualization (widened
+soundstage), and reverb to audio tracks and sounds. Developers can mix multiple
+audio effects in a local track or apply effects globally, across multiple
+tracks.</p>
+
+<p style="margin-top:1.25em;margin-bottom:.75em;"><strong>Support for new media
+formats</strong></p>
+
+<p>The platform now offers built-in support for the VP8 open video compression
+format and the WebM open container format. The platform also adds support for
+AAC encoding and AMR wideband encoding (in software), so that applications can
+capture higher quality audio than narrowband. </p>
+
+<p style="margin-top:1.25em;margin-bottom:.75em;"><strong>Access to multiple
+cameras</strong></p>
+
+<p>The Camera API now lets developers access any cameras that are available on a
+device, including a front-facing camera. Applications can query the platform for
+the number of cameras on the device and their types and characteristics, then
+open the camera needed. For example, a video chat application might want to access a
+front-facing camera that offers lower-resolution, while a photo application
+might prefer a back-facing camera that offers higher-resolution.</p>
+
+
+<h2 id="PlatformTechnologies">New Platform Technologies</h2>
+
+<h3>Media Framework</h3>
+
+<ul>
+<li>New media framework fully replaces OpenCore, maintaining all previous
+codec/container support for encoding and decoding.</li>
+<li>Integrated support for the VP8 open video compression format and the WebM
+open container format</li>
+<li>Adds AAC encoding and AMR wideband encoding</li>
+</ul>
+
+<h3>Linux Kernel </h3>
+<ul>
+<li>Upgraded to 2.6.35</li>
+</ul>
+
+<h3>Networking</h3>
+<ul>
+<li>SIP stack, configurable by device manufacturer
+<li>Support for Near Field Communications (NFC), configurable by device manufacturer</li>
+<li>Updated BlueZ stack</li>
+</ul>
+
+<h3>Dalvik runtime</h3>
+
+<ul>
+<li>Dalvik VM:
+<ul>
+<li>Concurrent Garbage Collector (target sub-3ms pauses)</li>
+<li>Adds further JIT (code-generation) optimizations</li>
+<li>Improved code verification</li>
+<li>StrictMode debugging, for identifying performance and memory issues</li>
+</ul>
+</li>
+
+
+<li>Core libraries:
+<ul>
+ <li>Expanded I18N support (full worldwide encodings, more locales)
+ <li>Faster Formatter and number formatting. For example, float formatting is 2.5x faster.</li>
+ <li>HTTP responses are gzipped by default. XML and JSON API response sizes may be reduced by 60% or more.</li>
+ <li>New collections and utilities APIs</li>
+ <li>Improved network APIs</li>
+ <li>Improved file read and write controls</li>
+ <li>Updated JDBC</li>
+</ul>
+</li>
+
+<li>Updates from upstream projects:
+ <ul>
+ <li>OpenSSL 1.0.0a</li>
+ <li>BouncyCastle 1.45</li>
+ <li>ICU 4.4</li>
+ <li>zlib 1.2.5</li>
+ </ul>
+</li>
+
+
+</ul>
+
+<p>For more information about the new developer APIs, see the <a
+href="android-2.3.html#api">Android 2.3 version notes</a> and the <a
+href="{@docRoot}sdk/api_diff/9/changes.html">API Differences Report</a>.</p>