From 68728cb3b44aba16abc298a37f6110ed00a781dd Mon Sep 17 00:00:00 2001 From: Scott Main Date: Fri, 14 May 2010 10:16:40 -0700 Subject: [PATCH] docs: add 2.2 platform highlights Change-Id: I43bcdad9dbea11bfcc30eadac1ef91a2e5982df8 --- docs/html/sdk/android-2.2-highlights.jd | 309 ++++++++++++++++++++++++ docs/html/sdk/images/2.2/22browser.png | Bin 0 -> 126458 bytes docs/html/sdk/images/2.2/22exchange.png | Bin 0 -> 113049 bytes docs/html/sdk/images/2.2/22gallery.png | Bin 0 -> 146789 bytes docs/html/sdk/images/2.2/22home.png | Bin 0 -> 146759 bytes docs/html/sdk/images/2.2/22hotspot.png | Bin 0 -> 50561 bytes docs/html/sdk/images/2.2/22keyboard.png | Bin 0 -> 41355 bytes docs/html/sdk/images/2.2/jit-graph.png | Bin 0 -> 11990 bytes 8 files changed, 309 insertions(+) create mode 100644 docs/html/sdk/android-2.2-highlights.jd create mode 100644 docs/html/sdk/images/2.2/22browser.png create mode 100644 docs/html/sdk/images/2.2/22exchange.png create mode 100644 docs/html/sdk/images/2.2/22gallery.png create mode 100644 docs/html/sdk/images/2.2/22home.png create mode 100644 docs/html/sdk/images/2.2/22hotspot.png create mode 100644 docs/html/sdk/images/2.2/22keyboard.png create mode 100644 docs/html/sdk/images/2.2/jit-graph.png diff --git a/docs/html/sdk/android-2.2-highlights.jd b/docs/html/sdk/android-2.2-highlights.jd new file mode 100644 index 0000000000000..c59871cf0cd4b --- /dev/null +++ b/docs/html/sdk/android-2.2-highlights.jd @@ -0,0 +1,309 @@ +page.title=Android 2.2 Platform Highlights + +@jd:body + + + + + + +

The Android 2.2 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.2. For more information about the new developer APIs, see the Android 2.2 version notes.

+ + + + + +

New User Features

+ +

Home

+ + + + + + +
+

New Home screen tips widget assists new users on how to configure the +home screen with shortcuts and widgets and how to make use of multiple home screens.

+

The Phone, applications Launcher, and Browser now have dedicated +shortcuts on the Home screen, making it easy to access them from any of the 5 home screen +panels.

+
+ +
+ + +

Browser

+ + + + + + +
+ + +

Flash: Browser is able to fully support the latest version of Flash so +the web experience is even closer to the desktop. Adobe Flash will be available to download from +Android Market.

+

Performance of the browser has been enhanced using the V8 engine, +which enables faster loading of JavaScript-heavy pages.

+
+ + +

Exchange support

+ + + + + + +
+

Improved security with the addition of numeric pin or alpha-numeric +password options to unlock device. Exchange administrators can enforce password policy across +devices.

+

Remote wipe: Exchange administrators can remotely reset the device to +factory defaults to secure data in case device is lost or stolen.

+

Exchange Calendars are now supported in the Calendar application.

+

Auto-discovery: you just need to know your user-name and password to +easily set up and sync an Exchange account (available for Exchange 2007 and higher).

+

Global Address Lists look-up is now available in the Email +application, enabling users to auto-complete recipient names from the directory.

+
+ +
+ + +

Camera and Gallery

+ + + + + + +
+ + +

Gallery allows you to peek into picture stacks using a zoom +gesture.

+

Camera onscreen buttons provide easy access to a new UI for +controling zoom, flash, white balance, geo-tagging, focus and exposure. Camcorder also provides +an easy way to set video size/quality for MMS and YouTube.

+

With the LED flash now enabled for the Camcorder, videos can be shot +at night or in low light settings.

+
+ + +

Portable hotspot

+ + + + + + +
+

Certain devices like the Nexus One can be turned into a portable Wi-Fi +hotspot that can be shared with up to 8 devices.

+

You can use your Android-powered phone as a 3G connection for a Windows or Linux laptop by +connecting their phone to the computer with a USB cable. The connection is then shared between the +two devices.

+
+ +
+ + +

Multiple keyboard languages

+ + + + + + +
+ + +

Multi-lingual users can add multiple languages to the keyboard and switch +between multiple Latin-based input languages by swiping across the space bar. This changes +the keys as well as the auto-suggest dictionary.

+
+ + +

Improved operating system performance

+ + + + + + +
+

Dalvik Performance Boost: 2x-5x performance speedup for CPU-heavy code +over Android 2.1 with Dalvik JIT.

+

The graph to the right shows the performance speedup from Android 2.1 +to Android 2.2 using various benchmark tests. For example, LinPack is now more than 5 times +faster.

+

Kernel Memory Management Boost: Improved memory reclaim by up to 20x, +which results in faster app switching and smoother performance on memory-constrained devices.

+
+ +
+ + + + + +

New Platform Technologies

+ + +

Media framework

+ + + + +

Bluetooth

+ + + + +

2.6.32 kernel upgrade

+ + + + + + +

New Developer Services

+ + +

Android Cloud to Device Messaging

+ +

Apps can utilize Android Cloud to Device Messaging to enable mobile alert, send to phone, and +two-way push sync functionality.

+ + +

Android Application Error Reports

+ +

New bug reporting feature for Android Market apps enables developers to receive crash and freeze +reports from their users. The reports will be available when they log into their publisher +account.

+ + + + +

New Developer APIs

+ + +

Apps on external storage

+ +

Applications can now request installation on the shared external storage (such as an SD +card).

+ + +

Media framework

+ +

Provides new APIs for audio focus, routing audio to SCO, and auto-scan of files to media +database. Also provides APIs to let applications detect completion of sound loading and auto-pause +and auto-resume audio playback.

+ + +

Camera and Camcorder

+ +

New preview API doubles the frame rate from ~10FPS to ~20FPS. Camera now supports portrait +orientation, zoom controls, access to exposure data, and a thumbnail utility. A new camcorder +profile enables apps to determine device hardware capablities.

+ + +

Graphics

+ +

New APIs for OpenGL ES 2.0, working with YUV image format, and ETC1 for texture +compression.

+ + +

Data backup

+ +

Apps can participate in data backup and restore, to ensure that users maintain their data +after performing a factory reset or when switching devices.

+ + +

Device policy manager

+ +

New device policy management APIs allow developers to write "device administrator" applications +that can control security features on the device, such as the minimum password strength, data wipe, +and so on. Users can select the administrators that are enabled on their devices.

+ + +

UI framework

+ +

New "car mode" and "night mode" controls and configurations allow applications to adjust their UI +for these situations. A scale gesture detector API provides improved definition of multi-touch +events. Applications can now customize the bottom strip of a TabWidget.

+ + + +

For more information about the new developer APIs, see the Android 2.2 version notes and the API Differences Report.

+ + + + + diff --git a/docs/html/sdk/images/2.2/22browser.png b/docs/html/sdk/images/2.2/22browser.png new file mode 100644 index 0000000000000000000000000000000000000000..817439da650c3c94b18ed6c11bf75cc207838b12 GIT binary patch literal 126458 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

y!0gFqT{QTz1^S9*+lHN}3P-fd_ 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