a687045045
docs: fix game controller trademarks Change-Id: I1eca030bad5bae0c581000fefffd5d3d49aac205
381 lines
18 KiB
Plaintext
381 lines
18 KiB
Plaintext
page.title=Android 3.1 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>
|
||
|
||
<p>Welcome to Android 3.1!</p>
|
||
|
||
<p>Android 3.1 is an incremental platform release that refines many of the
|
||
features introduced in Android 3.0. It builds on the same tablet-optimized UI
|
||
and features offered in Android 3.0 and adds several new capabilities for
|
||
users and developers. This document provides an overview of the new features and
|
||
technologies introduced in Android 3.1. For a more detailed look at new
|
||
developer APIs, see the <a href="{@docRoot}sdk/android-3.1.html">API
|
||
Overview</a> document.</p>
|
||
|
||
<p>For a high-level introduction to Android 3.0, please see the <a
|
||
href="{@docRoot}sdk/android-3.0-highlights.html">Android 3.0 Platform
|
||
Highlights</a>.</p>
|
||
|
||
<ul>
|
||
<li><a href="#UserFeatures">New User Features</a></li>
|
||
<li><a href="#DeveloperApis">New Developer Features</a></li>
|
||
</ul>
|
||
|
||
<h2 id="UserFeatures" style="clear:right">New User Features</h2>
|
||
|
||
<div style="padding-top:0em;">
|
||
<div style="margin-right:1em;margin-left:1em;float:right;padding-top:2em;"><a href="images/3.1/home_full.png" target="_android"><img src="images/3.1/home.png" alt="" height="280" /></a>
|
||
<div style="padding-left:1.25em;padding-bottom:1.25em;width:450px;font-size:.9em"><strong>Figure 1.</strong> An Android 3.1 Home screen.</div>
|
||
</div>
|
||
|
||
<h3>UI refinements</h3>
|
||
|
||
<p>The Android 3.1 platform adds a variety of refinements to make the user
|
||
interface more intuitive and more efficient to use.</p>
|
||
|
||
<p>UI transitions are improved throughout the system and across the standard
|
||
apps. The Launcher animation is optimized for faster, smoother transition to and
|
||
from the Apps list. Adjustments in color, positioning, and text make UI elements
|
||
easier to see, understand, and use. Accessibility is improved with consistent
|
||
audible feedback throughout the UI and a new setting to let users customize the
|
||
touch-hold interval to meet their needs.</p>
|
||
|
||
<p>Navigation to and from the five home screens is now easier — touching
|
||
the Home button in the system bar now takes you to the home screen most recently
|
||
used. Settings offers an improved view of internal storage,
|
||
showing the storage used by a larger set of file types. </p>
|
||
|
||
<h3 id="accessories">Connectivity for USB accessories</h3>
|
||
|
||
<p>Android 3.1 adds broad platform support for a variety of USB-connected
|
||
peripherals and accessories. Users can attach many types of input devices
|
||
(keyboards, mice, game controllers) and digital cameras. Applications can build
|
||
on the platform’s USB support to extend connectivity to almost any type of USB
|
||
device.</p>
|
||
|
||
<p>The platform also adds new support for USB accessories — external
|
||
hardware devices designed to attach to Android-powered devices as USB hosts. When an
|
||
accessory is attached, the framework will look for a corresponding application
|
||
and offer to launch it for the user. The accessory can also present a URL
|
||
to the user, for downloading an appropriate application if one is not already
|
||
installed. Users can interact with the application to control powered accessories such
|
||
as robotics controllers; docking stations; diagnostic and musical equipment;
|
||
kiosks; card readers; and much more.</p>
|
||
|
||
<p>The platform’s USB capabilities rely on components in device hardware, so
|
||
support for USB on specific devices may vary and is determined by device
|
||
manufacturers.</p>
|
||
|
||
<div style="padding-top:0em;">
|
||
<div style="margin-right:.8em;float:left;width:200px;"><img src="{@docRoot}sdk/images/3.1/tasks.png" alt="" />
|
||
<div style="padding-left:1em;padding-bottom:1em;xwidth:auto;font-size:.9em"><strong>Figure 2.</strong> The Recent Apps menu is now expandable and scrollable.</div>
|
||
</div>
|
||
|
||
<h3 id="recentapps">Expanded Recent Apps list</h3>
|
||
|
||
<p>For improved multitasking and instant visual access to a much larger number
|
||
of apps, the Recent Apps list is now expandable. Users can now scroll the list
|
||
of recent apps vertically to see thumbnail images all of the tasks in progress
|
||
and recently used apps, then touch a thumbnail to jump back into that task.</p>
|
||
|
||
<h3 id="resizewidgets">Resizeable Home screen widgets</h3>
|
||
|
||
<p>For more flexible Home screen customization, users can now resize their Home
|
||
screen widgets using drag bars provided by the system. Users can expand widgets
|
||
both horizontally and/or vertically to include more content, where supported by
|
||
each widget.</p>
|
||
|
||
|
||
<h3 id="keyboards">Support for external keyboards
|
||
and pointing devices</h3>
|
||
|
||
<p>Users can now attach almost any type of external keyboard or mouse to their
|
||
Android-powered devices, to create a familiar environment and work more
|
||
efficiently. One or more input devices can be attached to the system simultaneously
|
||
over USB and/or Bluetooth HID, in any combination. No special configuration or
|
||
driver is needed, in most cases. When multiple devices are connected, users can
|
||
conveniently manage the active keyboard and IME using the keyboard settings that
|
||
are available from the System bar.</p>
|
||
|
||
<p>For pointing devices, the platform supports most types of mouse with a single
|
||
button and optionally a scroll wheel, as well as similar devices such as
|
||
trackballs. When these are connected, users can interact with the UI using
|
||
point, select, drag, scroll, hover, and other standard actions.</p>
|
||
|
||
<h3 id="joysticks">Support for joysticks and gamepads</h3>
|
||
|
||
<p>To make the platform even better for gaming, Android 3.1 adds support for
|
||
most PC joysticks and gamepads that are connected over USB or Bluetooth HID.</p>
|
||
|
||
<p>For example, users can connect PlayStation<sup>®</sup>3 and Xbox 360<sup>®</sup>
|
||
game controllers over USB (but not Bluetooth), Logitech Dual Action™ gamepads and
|
||
flight sticks, or a car racing controller. Game controllers that use proprietary
|
||
networking or pairing are not supported by default, but in general, the platform
|
||
supports most PC-connectible joysticks and gamepads.</p>
|
||
|
||
<h3 id="wifi">Robust Wi-Fi networking</h3>
|
||
|
||
<p>Android 3.1 adds robust Wi-Fi features, to make sure that users and their
|
||
apps can take full advantage of higher-speed Wi-Fi access at home, at work, and
|
||
while away.</p>
|
||
|
||
<p>A new high-performance Wi-Fi lock lets applications maintain
|
||
high-performance Wi-Fi connections even when the device screen is off. Users can
|
||
take advantage of this to play continuous streamed music, video, and voice
|
||
services for long periods, even when the device is otherwise idle and the screen
|
||
is off. </p>
|
||
|
||
<p>Users can now configure an HTTP proxy for each individual Wi-Fi access
|
||
point, by touch-hold of the access point in Settings. The browser uses the HTTP
|
||
proxy when communicating with the network over the access point and other apps
|
||
may also choose to do so. The platform also provides backup and restore of the
|
||
user-defined IP and proxy settings.</p>
|
||
<p>The platform adds support for Preferred Network Offload (PNO), a background
|
||
scanning capability that conserves battery power savings in cases where Wi-Fi
|
||
needs to be available continuously for long periods of time.</p>
|
||
|
||
<h3 id="apps">Updated set of standard apps</h3>
|
||
|
||
<p>The Android 3.1 platform includes an updated set of standard applications
|
||
that are optimized for use on larger screen devices. The sections below
|
||
highlight some of the new features.</p>
|
||
|
||
<div style="padding-top:0em;">
|
||
<div style="margin-right:1em;float:right;margin-left:1em;margin-top:1.5em;margin-bottom:0;padding-bottom:0;"><img src="{@docRoot}sdk/images/3.1/controls.png" alt="" height="280px" />
|
||
<div style="padding-left:1.25em;padding-bottom:1.25em;margin-top:0;padding-top:0;font-size:.9em"><strong>Figure 3.</strong> Quick Controls menu in the Browser.</div>
|
||
</div>
|
||
</div>
|
||
|
||
<p><strong>Browser</strong></p>
|
||
|
||
<p>The Browser app includes a variety of new features and UI improvements that
|
||
make viewing web content simpler, faster, and more convenient.</p>
|
||
|
||
<p>The Quick Controls UI, accessible from Browser Settings, is extended and
|
||
redesigned. Users can now use the controls to view thumbnails of open tabs and
|
||
close the active tab, as well as access the overflow menu for instant access to
|
||
Settings and other controls.</p>
|
||
|
||
<p>To ensure a consistent viewing experience, the Browser extends it's support
|
||
for popular web standards such as CSS 3D, animations, and CSS fixed
|
||
positioning to all sites, mobile or desktop. It also adds support for embedded
|
||
playback of HTML5 video content. To make it easier to manage favorite
|
||
content, users can now save a web page locally for offline viewing, including
|
||
all styling and images. For convenience when visiting Google sites, an improved
|
||
auto-login UI lets users sign in quickly and manage access when multiple users
|
||
are sharing a device.</p>
|
||
|
||
<p>For best performance, the Browser adds support for plugins that use hardware
|
||
accelerated rendering. Page zoom performance is also dramatically improved,
|
||
making it faster to navigate and view web pages.</p>
|
||
|
||
<p><strong>Gallery</strong></p>
|
||
|
||
<p>The Gallery app now supports Picture Transfer Protocol (PTP), so that users
|
||
can connect their cameras over USB and import their pictures to Gallery with a
|
||
single touch. The app also copies the pictures to local storage and provides an
|
||
indicator to let users see how much space is available.</p>
|
||
|
||
<div style="padding-top:0em;">
|
||
<div style="margin-right:1em;float:left;margin-left:0em;"><img src="{@docRoot}sdk/images/3.1/resizeable.png" alt="" width="170" target="_android" style="margin-bottom:0;" />
|
||
<div style="padding-left:1.4em;padding-bottom:1em;width:180px;font-size:.9em"><strong>Figure
|
||
4.</strong> Home screen widgets can now be resized.</div></div>
|
||
|
||
<p><strong>Calendar</strong></p>
|
||
|
||
<p>Calendar grids are larger, for better readability and more accurate
|
||
touch-targeting. Additionally, users can create a larger viewing area for grids
|
||
by hiding the calendar list controls. Controls in the date picker are
|
||
redesigned, making them easier to see and use.</li>
|
||
</ul>
|
||
|
||
<p><strong>Contacts</strong></p>
|
||
|
||
<p>The Contacts app now lets you locate contacts more easily using full text
|
||
search. Search returns matching results from all fields that are stored for a
|
||
contact.
|
||
</p>
|
||
|
||
<p><strong>Email</strong></p>
|
||
|
||
<p>When replying or forwarding an HTML message, The Email app now sends both
|
||
plain text and HTML bodies as a multi-part mime message. This ensures that the
|
||
message will be formatted properly for all recipients. Folder prefixes for IMAP
|
||
accounts are now easier to define and manage. To conserve battery power and
|
||
minimize cell data usage, the application now prefetches email from the server
|
||
only when the device is connected to a Wi-Fi access point. </p>
|
||
|
||
<p>An updated Home screen widget give users quick access to more email. Users
|
||
can touch Email icon at the top of the widget to cycle through labels such as
|
||
Inbox, Unread, and Starred. The widget itself is now resizable, both
|
||
horizontally and vertically.</p>
|
||
|
||
<h3 id="enterprise">Enterprise support</h3>
|
||
|
||
<p>Users can now configure an HTTP proxy for each connected Wi-Fi access point.
|
||
This lets administrators work with users to set a proxy hostname, port, and any
|
||
bypass subdomains. This proxy configuration is automatically used by the Browser
|
||
when the Wi-Fi access point is connected, and may optionally be used by other
|
||
apps. The proxy and IP configuration is now backed up and restored across system
|
||
updates and resets.</p>
|
||
|
||
<p>To meet the needs of tablet users, the platform now allows a "encrypted
|
||
storage card" device policy to be accepted on devices with emulated storage
|
||
cards and encrypted primary storage.</p>
|
||
|
||
|
||
<h2 id="DeveloperApis" style="clear:both">New Developer Features</h2>
|
||
|
||
<p>The Android 3.1 platform adds refinements and new capabilities that
|
||
developers can build on, to create powerful and engaging application experiences
|
||
on tablets and other large-screen devices. </p>
|
||
|
||
<h3 id="accessory">Open Accessory API for rich interaction with
|
||
peripherals</h3>
|
||
|
||
<p>Android 3.1 introduces a new API for integrating hardware accessories with
|
||
applications running on the platform. The API provides a way to interact across
|
||
a wide range of peripherals, from robotics controllers to musical equipment,
|
||
exercise bicycles, and more.</p>
|
||
|
||
<p>The API is based on a new USB (Universal Serial Bus) stack and services
|
||
that are built into the platform. The platform provides services for discovering
|
||
and identifying connected hardware, as well as for notifying interested
|
||
applications that the hardware is available.</p>
|
||
|
||
<p>When a user plugs in a USB accessory, the platform receives
|
||
identifying information such as product name, accessory type, manufacturer, and
|
||
version. The platform sets up communication with the accessory and uses its
|
||
information to notify and launch a targeted app, if one is available. Optionally,
|
||
an accessory can provide a URL that lets users find and download an
|
||
app that works with the accessory. These discovery features make
|
||
first-time setup easier for the user and ensure that an appropriate application
|
||
is available for interacting with the connected hardware. </p>
|
||
|
||
<p>For application developers and accessory manufacturers, accessory mode offers
|
||
many new ways to engage users and build powerful interaction experiences with
|
||
connected hardware.</p>
|
||
|
||
<p>To learn more about how to develop applications that interact with
|
||
accessories, see the <a href="{@docRoot}guide/topics/usb/accessory.html">USB
|
||
Accessory</a> documentation.</p>
|
||
|
||
<h3 id="host">USB host API</h3>
|
||
|
||
<p>Android 3.1 provides built-in platform support for USB host mode and exposes
|
||
an API that lets applications manage connected peripherals. On devices that
|
||
support host mode, applications can use the API to identify and communicate with
|
||
connected devices such as audio devices. input devices, communications devices,
|
||
hubs, cameras, and more.</p>
|
||
|
||
<p>To learn more about how to develop applications that interact with
|
||
USB devices, see the <a href="{@docRoot}guide/topics/usb/host.html">USB
|
||
Host</a> documentation.</p>
|
||
|
||
<h3 id="inputdevices">Input from mice, joysticks, and gamepads</h3>
|
||
|
||
<p>Android 3.1 extends the input event system to support a variety of new input
|
||
sources and motion events, across all views and windows. Developers can build on
|
||
these capabilities to let users interact with their applications using mice,
|
||
trackballs, joysticks, gamepads, and other devices, in addition to keyboards and
|
||
touchscreens.</p>
|
||
|
||
<p>For mouse and trackball input, the platform supports two new motion event
|
||
actions: scroll (horizontal or vertical) such as from a scrollwheel; and hover,
|
||
which reports the location of the mouse when no buttons are pressed.
|
||
Applications can handle these events in any way needed.</p>
|
||
|
||
<p>For joysticks and gamepads, the platform provides a large number of motion
|
||
axes that applications can use from a given input source, such as X, Y, Hat X,
|
||
Hat Y, rotation, throttle, pressure, size, touch, tool, orientation, and others.
|
||
Developers can also define custom axes if needed, to capture motion in
|
||
additional ways. The platform provides motion events to applications as a batch,
|
||
and applications can query the details of the movements included in the batch,
|
||
for more efficient and precise handling of events.</p>
|
||
|
||
<p>Applications can query for the list of connected input devices and the motion
|
||
ranges (axes) supported by each device. Applications can also handle multiple
|
||
input and motion events from a single input device. For example, an application
|
||
can use mouse and joystick and mouse event sources from a single input
|
||
device.</p>
|
||
|
||
<h3 id="resizewidgetsapp">Resizable Home screen widgets</h3>
|
||
|
||
<p>Developers can now create Home screen widgets that users can resize
|
||
horizontally, vertically, or both. By simply adding an attribute to the
|
||
declaration of a widget, the widget becomes resizable horizontally, vertically,
|
||
or both. This lets users customize the display of the widget content and display
|
||
more of it on their Home screens.</p>
|
||
|
||
<h3 id="mtp">MTP API for integrating with external cameras</h3>
|
||
|
||
<p>In Android 3.1, a new MTP (Media Transfer Protocol) API lets developers write
|
||
apps that interact directly with connected cameras and other PTP devices. The
|
||
new API makes it easy for applications to receive notifications when devices are
|
||
attached and removed, manage files and storage on those devices, and transfer
|
||
files and metadata to and from them. The MTP API implements the PTP (Picture
|
||
Transfer Protocol) subset of the MTP specification.</p>
|
||
|
||
<h3 id="rtp">RTP API, for control over audio streaming sessions</h3>
|
||
|
||
<p>Android 3.1 exposes an API to its built-in RTP (Real-time Transport Protocol)
|
||
stack, which applications can use to directly manage on-demand or interactive
|
||
data streaming. In particular, apps that provide VOIP, push-to-talk,
|
||
conferencing, and audio streaming can use the API to initiate sessions and
|
||
transmit or receive data streams over any available network.</p>
|
||
|
||
<h3 id="performance">Performance optimizations</h3>
|
||
|
||
<p>Android 3.1 includes a variety of performance optimizations that help make
|
||
applications faster and more responsive. Some of the optimizations include:</p>
|
||
|
||
<ul>
|
||
<li>A new LRU cache class lets applications benefit from efficient caching.
|
||
Applications can use the class to reduce the time spent computing or downloading
|
||
data from the network, while maintaining a sensible memory footprint for the
|
||
cached data.</li>
|
||
<li>The UI framework now supports partial invalidates in hardware-accelerated
|
||
Views, which makes drawing operations in those Views more efficient.</li>
|
||
<li>A new graphics method, {@link android.graphics.Bitmap#setHasAlpha(boolean)
|
||
setHasAlpha()}, allows apps to hint that a given bitmap is opaque. This provides
|
||
an extra performance boost for some types of blits and is especially useful for
|
||
applications that use ARGB_8888 bitmaps.</li>
|
||
</ul>
|
||
|