blob: fe69e127aa36fa991281ca09079b938315900f3d [file] [log] [blame]
Dirk Dougherty052ab1a2011-10-12 15:41:13 -07001page.title=Android 4.0 Platform Highlights
2
3@jd:body
4
5
6<style type="text/css">
7#jd-content {
8 max-width:1024px;
9}
10#jd-content div.screenshot {
11 float:left;
12 clear:left;
13 padding:15px 30px 15px 0;
14}
15#jd-content div.video {
16 float:right;
17 padding:0 60px 40px;
18 margin-top:-15px;
19}
20#jd-content table.columns {
21 margin:0 0 1em 0;
22}
23#jd-content table.columns td {
24 padding:0;
25}
26#jd-content table.columns td+td {
27 padding:0 2em;
28}
29#jd-content table.columns td img {
30 margin:0;
31}
32#jd-content table.columns td+td>*:first-child {
33 margin-top:-2em;
34}
35.green {
36 color:#8db529;
37 font-weight:bold;
38}
39</style>
40<!--
41<div class="video" style="border:1px solid gray;width:250px;height:180px;margin:1.5em">
42<object width="278" height="180">
43<xparam name="movie" value="http://www.youtube.com/v/Jx3pdWBlZ34?hl=en&fs=1"></param>
44<xparam name="allowFullScreen" value="true"></param><param name="allowscriptaccess"
45value="always"></param>
46ICS CONSUMER VIDEO [ziwang]
47<embed xsrc="http://www.youtube.com/v/Jx3pdWBlZ34?hl=en&fs=1" type="application/x-shockwave-flash"
48allowscriptaccess="always" allowfullscreen="true" width="278" height="180"></embed>
49</object>
50</div>
51-->
52<p>Welcome to Android 4.0!</p>
53
54<p>Android 4.0 delivers a refined, unified UI for phones and tablets and introduces innovative features for users and developers. This document provides a glimpse of the many new features and technologies that make Android 4.0 simple, beautiful, and beyond smart. <!--For technical details about
55new developer APIs described below, see the <a
56href="{@docRoot}sdk/android-4.0.html">Android 4.0 API Overview</a> document.--></p>
57
58<ul>
59 <li><a href="#UserFeatures">Android 4.0 for Users</a></li>
60 <li><a href="#DeveloperApis">Android 4.0 for Developers</a></li>
61</ul>
62
63<h2 id="UserFeatures" style="clear:right">Android 4.0 for Users</h2>
64
65<div style="padding-bottom:0em;">
66<a href="{@docRoot}sdk/images/4.0/home-lg.png" target="_android"><img style="float:right;xborder:1px solid #ddd;border-radius: 5px;" src="{@docRoot}sdk/images/4.0/home.png" alt="" height="300" width="180" /></a>
67<a href="{@docRoot}sdk/images/4.0/lock-lg.png" target="_android"><img style="float:right;border:1px solid #ddd;border-radius: 5px;" src="{@docRoot}sdk/images/4.0/lock.png" alt="" height="300" width="180" /></a>
68</div>
69
70
71<h3 id="simple" style="color:#172861">Simple, beautiful, beyond smart</h3>
72
73<p>Android 4.0 builds on the things people love most about Android &mdash; easy
74multitasking, rich notifications, customizable home screens, resizable widgets,
75and deep interactivity &mdash; and adds powerful new ways of communicating and
76sharing.</p>
77
78<p style="margin-top:1em;margin-bottom:.75em;"><strong>Refined, evolved UI</strong></p>
79
80<p>Focused on bringing the power of Android to the surface, Android 4.0 makes
81<strong>common actions more visible</strong> and lets users navigate with
82simple, intuitive gestures. Refined <strong>animations</strong> and feedback
83throughout the system make interactions engaging and interesting. An entirely
84<strong>new typeface</strong> optimized for high-resolution screens improves
85readability and brings a polished, modern feel to the user interface.</p>
86
87<p>Virtual buttons in the System Bar let users navigate instantly to Back, Home,
88and Recent Apps. The <strong>System Bar</strong> and virtual buttons are present
89across all apps, but can be dimmed by applications for full-screen viewing.
90Users can access each application's contextual options in the <strong>Action
91Bar</strong>, displayed at the top (and sometimes also at the bottom) of the
92screen.</p>
93
94<p><strong>Multitasking</strong> is a key strength of Android and it's made even
95easier and more visual on Android 4.0. The Recent Apps button lets users jump
96instantly from one task to another using the list in the System Bar. The list
97pops up to show thumbnail images of apps used recently &mdash; tapping a
98thumbnail switches to the app.</p>
99
100<div style="padding-top:0em;">
101<div style="margin-right:.5em;float:left;width:182px;padding-top:.5em;">
102<a href="{@docRoot}sdk/images/4.0/tasks-lg.png" target="_android">
103<img src="{@docRoot}sdk/images/4.0/tasks.png" alt="" height="240" width="144" style="border:1px solid #ddd;border-radius: 6px;" /></a>
104<div style="padding-left:1em;padding-bottom:1em;font-size:.9em;padding-right:1em;">The Recent Apps list makes multitasking simple.</div>
105<a href="{@docRoot}sdk/images/4.0/lock-camera-lg.png" target="_android">
106<img src="{@docRoot}sdk/images/4.0/lock-camera.png" alt="" height="240" width="144" style="border:1px solid #ddd;border-radius: 6px;" /></a>
107<div style="padding-left:1em;padding-bottom:1em;font-size:.9em;padding-right:1.75em;">Jump to the camera or see notifications without unlocking.</div>
108<a href="{@docRoot}sdk/images/4.0/contact-call-lg.png" target="_android">
109<img src="{@docRoot}sdk/images/4.0/contact-call.png" alt="" height="240" width="144" style="border:1px solid #ddd;border-radius: 6px;padding:0" /></a>
110<!--<a href="{@docRoot}sdk/images/4.0/quick-response-lg.png" target="_android">
111<img src="{@docRoot}sdk/images/4.0/quick-responses-new.png" alt="" height="240" width="144" style="border:1px solid #ddd;border-radius: 6px;" /></a>-->
112<div style="padding-left:1em;padding-bottom:.5em;font-size:.9em;padding-right:1.75em;">For incoming calls, you can respond instantly by&nbsp;text.</div>
113</div>
114</div>
115
116<p>Rich and interactive <strong>notifications</strong> let users keep in
117constant touch with incoming messages, play music tracks, see real-time updates
118from apps, and much more. On smaller-screen devices, notifications appear at the
119top of the screen, while on larger-screen devices they appear in the System
120Bar.</p>
121
122<div style="padding-top:0em;">
123<div style="margin-right:1em;float:right;margin-left:1em;margin-top:.5em;margin-bottom:0;padding-bottom:0;width:326px">
124<a href="{@docRoot}sdk/images/4.0/allapps-lg.png" target="_android">
125<img src="{@docRoot}sdk/images/4.0/allapps.png" alt="" height="240" width="144" style="border:1px solid #ddd;border-radius: 6px;" /></a>
126<a href="{@docRoot}sdk/images/4.0/calendar-widget-lg.png" target="_android">
127<img src="{@docRoot}sdk/images/4.0/calendar-widget.png" alt="" height="240" width="144" style="border:1px solid #ddd;border-radius: 6px;" /></a>
128<div style="padding-left:1em;padding-bottom:1em;margin-top:0;padding-top:0;font-size:.9em"><!--<strong>Figure 3.</strong>-->The All Apps launcher (left) and resizable widgets (right) give you apps and rich content from the home screen.</div>
129</div>
130</div>
131
132
133<p style="margin-top:1em;margin-bottom:.75em;"><strong>Home screen folders and
134favorites tray</strong></p>
135
136<p>New <strong>home screen folders</strong> offer a new way for users to group
137their apps and shortcuts logically, just by dragging one onto another. From the
138All Apps launcher, users can now simply drag an app to get information about it
139or immediately uninstall it, or disable a pre-installed app.</p>
140
141<p>On smaller-screen devices, the home screen now includes a customizable
142<strong>favorites tray</strong> visible from all home screens. Users can drag
143apps, shortcuts, folders, and other priority items in or out of the favorites
144tray for instant access from any home screen.</p>
145
146
147<p style="margin-top:1em;margin-bottom:.75em;"><strong>Resizable
148widgets</strong></p>
149
150<p>Home screens in Android 4.0 are designed to be content-rich and customizable.
151Users can do much more than add shortcuts &mdash; they can embed live
152application content directly through interactive <strong>widgets</strong>.
153Widgets let users check email, flip through a calendar, play music, check social
154streams, and more &mdash; right from the home screen, without having to launch
155apps. Widgets are resizable, so users can expand them to show more content or
156shrink them to save space.</p>
157
158
159<p style="margin-top:1em;margin-bottom:.75em;"><strong>New lock screen
160actions</strong></p>
161
162<p>The lock screens now let users do more without unlocking. From the slide lock
163screen, users can <strong>jump directly to the camera</strong> for a picture or
164<strong>pull down the notifications window</strong> to check for messages. When
165listening to music, users can even manage music tracks and see album art. </p>
166
167
168<p style="margin-top:1em;margin-bottom:.75em;"><strong>Quick responses for
169incoming calls</strong></p>
170
171<p>When an incoming call arrives, users can now quickly <strong>respond by text
172message</strong>, without needing to pick up the call or unlock the device. On
173the incoming call screen, users simply slide a control to see a list of text
174responses and then tap to send and end the call. Users can add their own
175responses and manage the list from the Settings app.</p>
176
177
178<p style="margin-top:1em;margin-bottom:.75em;"><strong>Swipe to dismiss
179notifications, tasks, and browser tabs</strong></p>
180
181<p>Android 4.0 makes managing notifications, recent apps, and browoser tabs even
182easier. Users can now dismiss individual notifications, apps from the Recent
183Apps list, and browser tabs lists with a simple swipe of a finger. </p>
184
185<div style="padding-top:0em;">
186<div style="margin-right:1em;float:right;margin-left:1em;margin-top:1.5em;margin-bottom:0;padding-bottom:0;width:200px">
187<a href="{@docRoot}sdk/images/4.0/text-replace-lg.png" target="_android">
188<img src="{@docRoot}sdk/images/4.0/text-replace.png" alt="" width="190" style="border:1px solid #ddd;border-radius: 6px;" /></a>
189<div style="padding-left:1em;padding-bottom:1.25em;margin-top:0;padding-top:0;font-size:.9em"><!--<strong>Figure 3.</strong>-->A spell-checker lets you find errors and fix them faster. </div>
190<a href="{@docRoot}sdk/images/4.0/tts-lg.png" target="_android">
191<img src="{@docRoot}sdk/images/4.0/tts.png" alt="" width="190" style="border:1px solid #ddd;border-radius: 6px;" /></a>
192<div style="padding-left:1em;padding-bottom:1.25em;margin-top:0;padding-top:0;font-size:.9em">A powerful voice input engine lets you dictate continously.</div>
193</div>
194</div>
195
196<p style="margin-top:1em;margin-bottom:.75em;"><strong>Improved text input and
197spell-checking</strong></p>
198
199<p>The soft keyboard in Android 4.0 makes text input even faster and more
200accurate. Error correction and word suggestion are improved through a new set of
201default dictionaries and more accurate heuristics for handling cases such as
202double-typed characters, skipped letters, and omitted spaces. Word suggestion is
203also improved and the suggestion strip is simplified to show only three words at
204a time.</p>
205
206<p>To fix misspelled words more easily, Android 4.0 adds a spell-checker that
207locates and underlines errors and suggests replacement words. With one tap,
208users can choose from multiple spelling suggestions, delete a word, or add it to
209the dictionary. Users can even tap to see replacement suggestions for words that
210are spelled correctly. For specialized features or additional languages, users
211can now download and install third-party dictionaries, spell-checkers, and other
212text services.</p>
213
214
215<p style="margin-top:1em;margin-bottom:.75em;"><strong>Powerful voice input
216engine</strong></p>
217
218<p>Android 4.0 introduces a powerful new voice input engine that offers a
219continuous "open microphone" experience and streaming voice recognition. The new
220voice input engine lets users dictate the text they want, for as long as they
221want, using the language they want. Users can speak continously for a prolonged
222time, even pausing for intervals if needed, and dictate punctuation to create
223correct sentences. As the voice input engine enters text, it underlines possible
224dictation errors in gray. After dictating, users can tap the underlined words to
225quickly replace them from a list of suggestions.</p>
226
227<div style="padding-top:0em;">
228<div style="margsin-right:.8em;float:left;width:350px;padding-top:1em;">
229<a href="{@docRoot}sdk/images/4.0/usage-all-lg.png" target="_android">
230<img src="{@docRoot}sdk/images/4.0/usage-all.png" alt="" height="240" width="144" style="border:1px solid #ddd;border-radius: 6px;" /></a>
231<a href="{@docRoot}sdk/images/4.0/usage-maps-lg.png" target="_android">
232<img src="{@docRoot}sdk/images/4.0/usage-maps.png" alt="" height="240" width="144" style="border:1px solid #ddd;border-radius: 6px;" /></a>
233<div style="padding-left:1em;padding-bottom:1em;font-size:.9em;padding-right:1.75em;"><!--<strong>Figure 3.</strong>--> Data usage controls let you monitor total usage by network type and application and then set limits if needed.</div>
234</div>
235</div>
236
237<p style="margin-top:1em;margin-bottom:.75em;"><strong>Control over network
238data</strong></p>
239
240<p>Mobile devices can make extensive use of network data for streaming content,
241synchronizing data, downloading apps, and more. To meet the needs of users with
242<strong>tiered or metered data plans</strong>, Android 4.0 adds new controls for
243managing network data usage.</p>
244
245<p>In the Settings app, colorful charts show the total data usage on each
246network type (mobile or Wi-Fi), as well as amount of data used by each running
247application. Based on their data plans, users can optionally set warning levels
248or hard limits on data usage or disable mobile data altogether. Users can also
249manage the background data used by individual applications as needed.</p>
250
251
252<p style="margin-top:1em;margin-bottom:.75em;"><strong>Designed for
253accessibility</strong></p>
254
255<p>A variety of new features greatly enhance the accessibility of Android 4.0
256for blind or visually impaired users. Most important is a new
257<strong>explore-by-touch mode</strong> that lets users navigate without having
258to see the screen. Touching the screen once triggers audible feedback that
259identifies the UI component below; a second touch in the same component
260activates it with a full touch event. The new mode is especially important to
261support users on new devices that use virtual buttons in the System Bar, rather
262than dedicated hardware buttons or trackballs. Also, standard apps are updated
263to offer an improved accessibility experience. The <strong>Browser</strong>
264supports a script-based screen reader for reading favorite web content and
265navigating sites. For improved readability, users can also increase the default
266font size used across&nbsp;the&nbsp;system.</p>
267
268<p>The accessibility experience begins at first setup &mdash; a simple
269<strong>touch gesture</strong> during setup (clockwise square from upper left)
270activates all accessibility features and loads a setup tutorial. Once
271accessibility features are active, everything visible on the screen can be
272spoken aloud by the standard screen reader.</p>
273
274
275<h3 id="comms" style="color:#172861">Communication and sharing</h3>
276
277<div style="padding-top:0em;">
278<div style="margin-right:1em;float:right;margin-left:.5em;margin-top:1.5em;margin-bottom:0;padding-bottom:0;width:490px">
279<!--<img src="{@docRoot}sdk/images/4.0/contact-call.png" alt="" height="240" width="144" style="border:1px solid #ddd;border-radius: 6px;" />-->
280<a href="{@docRoot}sdk/images/4.0/contact-faves-lg.png" target="_android">
281<img src="{@docRoot}sdk/images/4.0/contact-faves.png" alt="" height="240" width="144" style="border:1px solid #ddd;border-radius: 6px;padding:0" /></a>
282<a href="{@docRoot}sdk/images/4.0/contact-connect-lg.png" target="_android">
283<img src="{@docRoot}sdk/images/4.0/contact-connect.png" alt="" height="240" width="144" style="border:1px solid #ddd;border-radius: 6px;padding:0" /></a>
284<a href="{@docRoot}sdk/images/4.0/contact-email-lg.png" target="_android">
285<img src="{@docRoot}sdk/images/4.0/contact-email.png" alt="" height="240" width="144" style="border:1px solid #ddd;border-radius: 6px;padding:0" /></a>
286
287<div style="padding-left:1em;padding-bottom:1.25em;margin-top:0;padding-top:0;font-size:.9em"><!--<strong>Figure 3.</strong>-->Contacts and profiles are integrated across apps and social networks, for a consistent, personal experience everywhere &mdash; from incoming calls to emails.</div>
288</div>
289</div>
290
291<p>Designed for the way people live, Android 4.0 integrates rich social
292communication and sharing touchpoints across the system, making it easy to talk,
293email, text, and share.</p>
294
295
296<p style="margin-top:1em;margin-bottom:.75em;"><strong>People and
297profiles</strong></p>
298
299<p>Throughout the system, a user’s social groups, profiles, and contacts are
300linked together and integrated for easy accessibility. At the center is a new
301<strong>People app</strong> that offers richer profile information, including a
302large profile picture, phone numbers, addresses and accounts, status updates,
303and a new button for connecting on integrated social networks. </p>
304
305<p>The user's own contact information is stored in a new <strong>"Me"
306profile</strong>, allowing easier sharing with apps and people. All of the
307user's integrated contacts are displayed in an easy to manage list, including
308controls over which contacts are shown from any integrated account or social
309network. Wherever the user navigates across the system, tapping a profile photo
310displays Quick Contacts, with shortcuts to phone numbers, text messaging, and
311more. </p>
312
313
314<p style="margin-top:1em;margin-bottom:.75em;"><strong>Unified calendar, visual
315voicemail</strong></p>
316
317<p>To help organize appointments and events, an updated <strong>Calendar
318app</strong> brings together personal, work, school, and social agendas. With
319user permission, other applications can contribute events to the calendar and
320manage reminders, for an integrated view across multiple calendar providers. The
321app is redesigned to let users manage events more easily. Calendars are
322color-coded and users can <strong>swipe left or right</strong> to change dates
323and pinch to zoom in or out agendas. </p>
324
325<p>In the phone app, a new <strong>visual voicemail</strong> features integrates
326incoming messages, voice transcriptions, and audio files from one or more
327providers. Third-party applications can integrate with the Phone app to add
328their own voice messages, transcriptions, and more to the visual voicemail
329inbox. </p>
330
331<div style="padding-top:0em;">
332<div style="margsin-right:0em;float:left;width:282px;padding-top:1em;">
333<a href="{@docRoot}sdk/images/4.0/camera-lg.png" target="_android">
334<img src="{@docRoot}sdk/images/4.0/camera.png" alt="" width="240" height="144" style="border:1px solid #ddd;border-radius: 6px;" /></a>
335<a href="{@docRoot}sdk/images/4.0/gallery-edit-lg.png" target="_android">
336<img src="{@docRoot}sdk/images/4.0/gallery-edit.png" alt="" width="240" height="144" style="border:1px solid #ddd;border-radius: 6px;" /></a>
337<a href="{@docRoot}sdk/images/4.0/gallery-share-lg.png" target="_android">
338<img src="{@docRoot}sdk/images/4.0/gallery-share.png" alt="" width="240" height="144" style="border:1px solid #ddd;border-radius: 6px;" /></a>
339<div style="padding-left:1em;padding-bottom:1em;font-size:.9em;padding-right:2.75em;">Capture the picture you want, edit, and share instantly. </div>
340</div>
341</div>
342
343<p style="margin-top:1em;margin-bottom:.75em;"><strong>Rich and versatile camera
344capabilities</strong></p>
345
346<p>The Camera app includes many new features let users capture special moments
347with great photos and videos. After capturing images, they can edit and share
348them easily with friemds. </p>
349
350<p>When taking pictures, <strong>continuous focus</strong>, <strong>zero shutter
351lag exposure</strong>, and decreased shot-to-shot speed help capture clear,
352precise images. <strong>Stabilized image zoom</strong> lets users compose photos
353and video in the way they want, including while video is recording. For new
354flexibility and convenience while shooting video, users can now take
355<strong>snapshots at full video resolution</strong> just by tapping the screen
356as video continues to record.</p>
357
358<p>To make it easier to take great pictures of people, built-in <strong>face
359detection</strong> locates faces in the frame and automatically sets focus. For
360more control, users can <strong>tap to focus</strong> anywhere in the preview
361image. </p>
362
363<p>For capturing larger scenes, the Camera introduces a <strong>single-motion
364panorama</strong> mode. In this mode, the user starts an exposure and then
365slowly turns the Camera to encompass as wide a perspective as needed. The Camera
366assembles the full range of continuous imagery into a single panoramic
367photo.</p>
368
369<p>After taking a picture or video, users can quickly share it by email, text
370message, bluetooth, social networks, and more, just by tapping the thumbnail in
371the camera controls. </p>
372
373
374<div style="padding-top:0em;">
375<div style="margin-right:1em;float:right;margin-left:1em;padding-top:1em;margin-bottom:1em;padding-bottom:0;width:160px">
376<img src="{@docRoot}sdk/images/4.0/gallery-widget.png" alt="" width="144" style="border:1px solid #ddd;border-radius: 6px;" />
377<div style="padding-left:1em;padding-bottom:1.25em;margin-top:0;padding-top:0;font-size:.9em">A Photo Gallery widget on the home screen.</div>
378</div>
379
380<p style="margin-top:1em;margin-bottom:.75em;"><strong>Redesigned Gallery app
381with photo editor</strong></p>
382
383<p>The Gallery app now makes it easier to manage, show, and share photos and
384videos. For managing collections, a <strong>redesigned album layout</strong>
385shows many more albums and offers larger thumbnails. There are many ways to sort
386albums, including by time, location, people, and tags. To help pictures look
387their best, the Gallery now includes a powerful <strong>photo editor</strong>.
388Users can crop and rotate pictures, set levels, remove red eyes, add effects,
389and much more. After retouching, users can select one or multiple pictures or
390videos to share instantly over email, text messaging, bluetooth, social
391networks, or other apps.</p>
392
393<p>An improved <strong>Picture Gallery widget</strong> lets users look at
394pictures directly on their home screen. The widget can display pictures from a
395selected album, shuffle pictures from all albums, or show a single image. After
396adding the widget to the home screen, users can flick through the photo stacks
397to locate the image they want, then tap to load it in Gallery. </p>
398
399<div style="padding-top:0em;clear:right;">
400<div style="margin-right:1em;float:right;margin-left:1em;padding-top:1em;margin-bottom:1em;padding-bottom:0;width:320px">
401<img src="{@docRoot}sdk/images/4.0/live-effects.png" alt="" width="297" style="border:1px solid #ddd;border-radius: 6px;" />
402<div style="padding-left:1em;padding-bottom:1em;margin-top:0;padding-top:0;font-size:.9em">Live Effects let you change backgrounds and use Silly Faces during video.</div>
403</div>
404</div>
405
406<p style="margin-top:1em;margin-bottom:.75em;"><strong>Live Effects for transforming video</strong></p>
407
408<p>Live Effects is a collection of graphical transformations that add interest and fun to videos captured in the Camera app. For example, users can change the background behind them to any stock or custom image, for just the right setting when shooting video or using Google Talk video chat. Also available is Silly Faces, a set of morphing effects that use state-of-the-art face recognition and GPU filters to add great effects facial features during video capture. For example, you can use effects such as small eyes, big mouth, big nose, face squeeze, and more. Outside of the Camera app, Live Effects is available during video chat in the Google Talk app.</p>
409
410<div style="padding-top:0em;">
411<div style="margsin-right:.8em;float:left;width:186px;padding-top:1em;">
412<a href="{@docRoot}sdk/images/4.0/screenshot-lg.png" target="_android">
413<img src="{@docRoot}sdk/images/4.0/screenshot.png" alt="" height="240" width="144" style="border:1px solid #ddd;border-radius: 6px;" /></a>
414<div style="padding-left:1em;padding-bottom:1.25em;margin-top:0;padding-top:0;font-size:.9em"> Snapping a screenshot.</div>
415</div>
416</div>
417</div>
418
419<p style="margin-top:1em;margin-bottom:.75em;"><strong>Sharing with screenshots</strong></p>
420
421<p>Users can now share what's on their screens more easily by taking screenshots. Hardware buttons let them snap a <strong>screenshot</strong> and store it locally. Afterward, they can view, edit, and share the screen shot in Gallery or a similar app.</p>
422
423
424<h3 id="cloud" style="color:#172861">Cloud-connected experience</h3>
425
426<div style="padding-top:0em;">
427<div style="margin-right:1em;float:right;margin-left:1em;padding-top:1em;margin-bottom:0;padding-bottom:0;width:326px">
428<a href="{@docRoot}sdk/images/4.0/browser-tabs-lg.png" target="_android">
429<img src="{@docRoot}sdk/images/4.0/browser-tabs.png" alt="" height="240" width="144" style="border:1px solid #ddd;border-radius: 6px;" /></a>
430<a href="{@docRoot}sdk/images/4.0/browser-lg.png" target="_android">
431<img src="{@docRoot}sdk/images/4.0/browser.png" alt="" height="240" width="144" style="border:1px solid #ddd;border-radius: 6px;" /></a>
432<div style="padding-left:1em;padding-bottom:1.25em;margin-top:0;padding-top:0;font-size:.9em"><!--<strong>Figure 3.</strong>-->The Browser tabs menu <em>(left)</em> lets you quickly switch browser tabs. The options menu <em>(right)</em> gives you new ways to manage your browsing experience.</div>
433<img src="{@docRoot}sdk/images/4.0/bbench.png" alt="" width="310" />
434<div style="padding-left:1em;padding-bottom:1em;margin-top:0;padding-top:0;font-size:.9em">Benchmark comparisons of Android Browser.</div>
435</div>
436</div>
437
438<p>Android has always been cloud-connected, letting users browse the web and sync photos, apps, games, email, and contacts &mdash; wherever they are and across all of their devices. Android 4.0 adds new browsing and email capabilities to let users take even more with them and keep communication organized.</p>
439
440
441<p style="margin-top:1em;margin-bottom:.75em;"><strong>Powerful web
442browsing</strong></p>
443
444<p>The Android Browser offers an experience that’s as rich and convenient as a
445desktop browser. It lets users instantly and manage <strong>sync Google Chrome
446bookmarks</strong> from all of their accounts, jump to their favorite content
447faster, and even save it for reading later in case there's no network
448available.</p>
449
450<p>To get the most out of web content, users can now request full
451<strong>desktop versions</strong> of web sites, rather than their mobile
452versions. Users can set their preference for web sites separately for each
453<strong>browser tab</strong>. For longer content, users can save a copy for
454<strong>offline reading</strong>. To find and open saved pages, users can browse
455a visual list that’s included with browser bookmarks and history. For better
456readability and accessibility, users can increase the browser’s <strong>zoom
457levels</strong> and override the system default <strong>text sizes</strong>.</p>
458
459<p>Across all types of content, the Android Browser offers dramatically improved
460<strong>page rendering performance</strong> through updated versions of the
461WebKit core and the V8 Crankshaft compilation engine for JavaScript. In
462benchmarks run on a Nexus S device, the Android 4.0 browser showed an
463improvement of nearly 220% over the Android 2.3 browser in the V8 Benchmark
464Suite and more than 35% in the SunSpider 9.1 JavaScript Benchmark. When run on a
465Galaxy Nexus device, the Android 4.0 browser showed improvement of nearly 550%
466in the V8 benchmark and nearly 70% in the SunSpider benchmark.</p>
467
468
469<p style="margin-top:1em;margin-bottom:.75em;"><strong>Improved
470email</strong></p>
471
472<p>In Android 4.0, email is easier to send, read, and manage. For composing
473email, <strong>improved auto-completion</strong> of recipients helps with
474finding and adding frequent contacts more quickly. For easier input of frequent
475text, users can now create <strong>quick responses</strong> and store them in
476the app, then enter them from a convenient menu when composing. When replying to
477a message, users can now toggle the message to Reply All and Forward without
478changing screens.</p>
479
480<p>For easier browsing across accounts and labels, the app adds an
481<strong>integrated menu</strong> of accounts and recent labels. To help users
482locate and organize IMAP and Exchange email, the Email app now supports
483<strong>nested mail subfolders</strong>, each with synchronization rules. Users
484can also search across folders on the server, for faster results. </p>
485
486<p>For <strong>enterprises</strong>, the Email app supports EAS v14. It supports
487EAS certificate authentication, provides ABQ strings for device type and mode,
488and allows automatic sync to be disabled while roaming. Administrators can also
489limit attachment size or disable attachments.</p>
490
491<p>For keeping track of incoming email more easily, a <strong>resizable Email
492widget</strong> lets users flick through recent email right from the home
493screen, then jump into the Email app to compose or reply.</p>
494
495
496<div style="padding-top:0em;">
497<div style="margsin-right:.8em;float:left;width:186px;padding-top:1em;">
498<a href="{@docRoot}sdk/images/4.0/beam-lg.png" target="_android">
499<img src="{@docRoot}sdk/images/4.0/beam.png" alt="" height="240" width="144" style="border:1px solid #ddd;border-radius: 6px;" /></a>
500<div style="padding-left:1em;padding-bottom:1em;margin-top:0;padding-top:0;font-size:.9em;padding-right:1.5em;">Android Beam lets users share what they are using with a single tap.</div>
501</div>
502</div>
503
504<h3 id="innovation" style="color:#172861">Innovation</h3>
505
506<p>Android is continously driving innovation forward, pushing the boundaries of
507communication and sharing with new capabilities and interactions.</p>
508
509<p style="margin-top:1em;margin-bottom:.75em;"><strong>Android Beam for
510NFC-based sharing</strong></p>
511
512<p>Android Beam is an innovative, convenient feature for sharing across two
513NFC-enabled devices, It lets people instantly exchange favorite apps, contacts,
514music, videos &mdash; almost anything. It’s incredibly simple and convenient to
515use &mdash; there’s no menu to open, application to launch, or pairing needed.
516Just touch one Android-powered phone to another, then tap to send.</p>
517
518<p>For sharing apps, Android Beam pushes a link to the app's details page in
519Android Market. On the other device, the Market app launches and loads the
520details page, for easy downloading of the app. Individual apps can build on
521Android Beam to add other types of interactions, such as passing game scores,
522initiating a multiplayer game or chat, and more.</p>
523
524<div style="padding-top:0em;">
525<div style="margin-right:1em;float:right;margin-left:1em;margin-top:.5em;margin-bottom:0;padding-bottom:0;width:160px">
526<a href="{@docRoot}sdk/images/4.0/face-unlock-lg.png" target="_android">
527<img src="{@docRoot}sdk/images/4.0/face-unlock.png" alt="" height="240" width="144" style="border:1px solid #ddd;border-radius: 6px;" /></a>
528<div style="padding-left:1em;padding-bottom:1em;margin-top:0;padding-top:0;font-size:.9em">Face recognition lets you unlock your phone with your face.</div>
529</div>
530</div>
531
532<p style="margin-top:1em;margin-bottom:.75em;"><strong>Face Unlock</strong></p>
533
534<p>Android 4.0 introduces a completely new approach to securing a device, making
535it even more personal &mdash; Face Unlock is a new screen-lock option that lets
536users unlock their devices with their faces. It takes advantage of
537state-of-the-art facial recognition technology to register a face and to
538recognize it later when unlocking the device. Users just hold their devices in
539front of their faces to unlock, or use a backup PIN or pattern. </p>
540
541
542<p style="margin-top:1em;margin-bottom:.75em;"><strong>Wi-Fi Direct and Bluetooth HDP</strong></p>
543
544<p>Support for <strong>Wi-Fi Direct</strong> lets users connect directly to
545nearby peer devices over Wi-Fi, for more reliable, higher-speed communication.
546No internet connection or tethering is needed. Through third-party apps, users
547can connect to compatible devices to take advantage of new features such as
548instant sharing of files, photos, or other media; streaming video or audio from
549another device; or connecting to compatible printers or other devices.</p>
550
551<p>Android 4.0 also introduces built-in support for connecting to <strong>Bluetooth Health Device Profile (HDP)</strong> devices. With support from third-party apps, users can connect to wireless medical devices and sensors in hospitals, fitness centers, homes, and elsewhere. In addition, for connecting to higher quality Bluetooth audio devices, Android 4.0 adds support for Bluetooth Hands Free Profile (HFP) 1.6.</p>
552
553
554<h2 id="DeveloperApis" style="clear:right">New Developer Features</h2>
555
556<!-- <ul>
557<li><a href="#ui-dev">Unified UI framework for phones, tablets, and more</a></li>
558<li><a href="#communication-dev">Communication and sharing</a></li>
559<li><a href="#media-dev">New media capabilities</a></li>
560<li><a href="#connectivity-dev">New types of connectivity</a></li>
561<li><a href="#uicomp-dev">New UI components and capabilities</a></li>
562<li><a href="input-dev">New input types and text services</a></li>
563<li><a href="#accessibility-dev">Enhanced accessibility APIs</a></li>
564<li><a href="#data-dev">Efficient network usage</a></li>
565<li><a href="#security-dev">Security for apps and content</a></li>
566<li><a href="#enterprise-dev">Enhancements for Enterprise</a></li>
567</ul>-->
568
569<h3 id="ui-dev">Unified UI framework for phones, tablets, and more</h3>
570
571<p>Android 4.0 brings a unified UI framework that lets developers create
572elegant, innovative apps for phones, tablets, and more. It includes all of the
573familiar Android 3.x interface elements and APIs &mdash; fragments, content
574loaders, Action Bar, rich notifications, resizable home screen widgets, and more
575&mdash; as well as new elements and APIs.</p>
576
577<p>For developers, the unified UI framework in Android 4.0 means new UI tools,
578consistent design practices, simplified code and resources, and streamlined
579development across the range of Android-powered devices.</p>
580
581<div class="sidebox-wrapper">
582<div class="sidebox" style="border-left:1px solid #22a5ca;background-color:#fff;">
583 <h3>Key Android 3.x developer features, <br>now for phones too</h3>
584
585<p>Core UI</p>
586<ul>
587<li>Fragments and content loaders</li>
588<li>Resizeable home screen widgets</li>
589<li>Rich notifications</li>
590<li>Multi-selection, drag-drop, clipboard</li>
591<li>Improved screen-support API</li>
592<li>Hardware-accelerated 2D graphics</li>
593</ul>
594
595<p>Graphics and animation</p>
596<ul>
597<li>Property-based animation</li>
598<li>Renderscript 3D graphics</li>
599</ul>
600
601<p>Media and connectivity</p>
602<ul>
603<li>HTTP Live streaming</li>
604<li>Bluetooth A2DP and HSP devices</li>
605<li>Support for RTP</li>
606<li>MTP/PTP file transfer</li>
607<li>DRM framework</li>
608<li>Input from keyboard, mouse, gamepad, joystick</li>
609</ul>
610
611<p>Enterprise</p>
612<ul>
613<li>Full device encryption</li>
614<li>DPM policies for encrypted storage and passwords</li>
615</ul>
616</div>
617</div>
618
619<h3 id="communication-dev">Communication and sharing</h3>
620
621<p>Android 4.0 extends social and sharing features to any application on the
622device. Applications can integrate contacts, profile data, and calendar events
623from any of the user’s activities or social networks.</p>
624
625
626<p style="margin-top:1em;margin-bottom:.75em;"><strong>Social API</strong></p>
627
628<p>A shared social provider and API provide a new unified store for contacts,
629profile data, status updates, and photos. Any app or social network with user
630permission can contribute raw contacts and make them accessible to other apps
631and networks. Applications with user permission can also read profile data from
632the provider and display it in their applications.</p>
633
634<p>The social API lets applications store standard contact data as well as new
635types of content for any given contact, including large profile photos and
636recent activity feedback. Recent activity feedback is a standard way for
637applications to “tag” a contact with common activity, such as when the user
638calls the contact or sends an email or SMS message. The social provider uses the
639recent activity feedback as a new signal in ranking, such as for name
640auto-complete, to keep the most relevant contacts ranked closest to the top.</p>
641
642<p>Applications can also let users set up a social connection to a contact from
643the People app. When the user touches Add Connection in a contact, the app
644broadcasts a public intent that other apps can handle, displaying any UI needed
645to create the social connection.</p>
646
647<p>Building on the social API, developers can add powerful new interactions that
648span multiple social networks and contacts sources.</p>
649
650
651<p style="margin-top:1em;margin-bottom:.75em;"><strong>Calendar API</strong></p>
652
653<p>A shared calendar content provider and framework API make it easier for
654developers to add calendar services to their apps.</p>
655
656<p>With user permission, any application can add events to the shared database
657and manage dates, attendees, alerts, and reminders. Applications can also read
658entries from the database, including events contributed by other applications,
659and handle the display of event alerts and reminders. Using the calendar
660provider, applications can take advantage of event data sourced from a variety
661of apps and protocols, to offer innovative ways of viewing and managing a user’s
662events. Apps can also use of calendar data to improve the relevance of their
663other content.</p>
664
665<p>For lighter-weight access to calendar services, the Calendar app defines a
666set of public Intents for creating, viewing, and editing events. Rather than
667needing to implement a calendar UI and integrate directly with the calendar
668provider, applications can simply broadcast calendar Intents. When the Calendar
669app receives the Intents, it launches the appropriate UI and stores any event
670data entered. Using calendar Intents, for example, apps can let users add events
671directly from lists, dialogs, or home screen widgets, such as for making
672restaurant reservations or booking time with friends.</p>
673
674
675<p style="margin-top:1em;margin-bottom:.75em;"><strong>Visual voicemail
676API</strong></p>
677
678<p>A shared Voicemail provider and API allow developers to build applications
679that contribute to a unified voicemail store. Voicemails are displayed and
680played in the call log tab of the platform’s Phone app.</p>
681
682
683<p style="margin-top:1em;margin-bottom:.75em;"><strong>Android Beam</strong></p>
684
685<p>Android Beam is an NFC-based feature that lets users instantly share
686information about the apps they are using, just by touching two NFC-enabled
687phones together. When the devices are in range &mdash; within a few centimeters
688&mdash; the system sets up an NFC connection and displays a sharing UI. To share
689whatever they are viewing with the other device, users just touch the screen.
690</p>
691
692<p>For developers, Android Beam is a new way of triggering almost any type of
693proximity-based interaction. For example, it can let users instantly exchange
694contacts, set up multiplayer gaming, join a chat or video call, share a photo or
695video, and more. The system provides the low-level NFC support and the sharing
696UI, while the foreground app provides lightweight data to transfer to the other
697device. Developers have complete control over the data that is shared and how it
698is handled, so almost any interaction is possible. For larger payloads,
699developers can even use Android Beam to initiate a connection and transfer the
700data over Bluetooth, without the need for user-visible pairing.</p>
701
702<p>Even if developers do not add custom interactions based on Android Beam they
703can still benefit from it being deeply integrated into Android. By default the
704system shares the app’s Android Market URL, so it’s easy for the user to
705download or purchase the app right away.</p>
706
707
708<p style="margin-top:1em;margin-bottom:.75em;"><strong>Modular sharing
709widget</strong></p>
710
711<p>The UI framework includes a new widget, ShareActionProvider, that lets
712developers quickly embed standard share functionality and UI in the Action Bar
713of their applications. Developers simply add ShareActionProvider to the menu and
714set an intent that describes the desired sharing action. The system handles the
715rest, building up the list of applications that can handle the share intent and
716dispatching the intent when the user chooses from the menu.</p>
717
718
719<h3 id="media-dev">New media capabilities</h3>
720
721<p style="margin-top:1em;margin-bottom:.75em;"><strong>Low-level streaming
722multimedia</strong></p>
723
724<p>Android 4.0 provides a direct, efficient path for low-level streaming
725multimedia. The new path is ideal for applications that need to maintain
726complete control over media data before passing it to the platform for
727presentation. For example, media applications can now retrieve data from any
728source, apply proprietary encryption/decryption, and then send the data to the
729platform for display.</p>
730
731<p>Applications can now send processed data to the platform as a multiplexed
732stream of audio/video content in MPEG-2 transport stream format. The platform
733de-muxes, decodes, and renders the content. The audio track is rendered to the
734active audio device, while the video track is rendered to either a Surface or a
735SurfaceTexture. When rendering to a SurfaceTexture, the application can apply
736subsequent graphics effects to each frame using OpenGL.</p>
737
738<p>To support this low-level streaming, the platform introduces a new native API
739based on <a href="http://www.khronos.org/openmax/al/" target="_top">Khronos
740OpenMAX AL 1.0.1</a>. The API is implemented on the same underlying services as
741the platform’s existing OpenSL ES API, so developers can make use of both APIs
742together if needed. Tools support for low-level streaming multimedia will be
743available in an upcoming release of the Android NDK.</p>
744
745
746<p style="margin-top:1em;margin-bottom:.75em;"><strong>New camera
747capabilities</strong></p>
748
749<p>Developers can take advantage of a variety of new camera features in Android
7504.0. ZSL exposure, continuous focus, and image zoom let apps capture better
751still and video images, including during video capture. Apps can even capture
752full-resolution snapshots while shooting video. Apps can now set custom metering
753regions in a camera preview, then manage white balance and exposure dynamically
754for those regions. For easier focusing and image processing, a face-detection
755service identifies and tracks faces in a preview and returns their screen
756coordinates.</p>
757
758
759<p style="margin-top:1em;margin-bottom:.75em;"><strong>Media effects for
760transforming images and video</strong></p>
761
762<p>A set of high-performance transformation filters let developers apply rich
763effects to any image passed as an OpenGL ES 2.0 texture. Developers can adjust
764color levels and brightness, change backgrounds, sharpen, crop, rotate, add lens
765distortion, and apply other effects. The transformations are processed by the
766GPU, so they are fast enough for processing image frames loaded from disk,
767camera, or video stream.</p>
768
769
770<p style="margin-top:1em;margin-bottom:.75em;"><strong>Audio remote
771controls</strong></p>
772
773<p>Android 4.0 adds a new audio remote control API that lets media applications
774integrate with playback controls that are displayed in a remote view. Media
775applications can integrate with a remote music playback control that’s built
776into in the platform’s lock screen, allowing users to control song selection and
777playback without having to unlock and navigate to the music app.</p>
778
779<p>Using the audio remote control API, any music or media app can register to
780receive media button events from the remote control and then manage play state
781accordingly. The application can also supply metadata to the remote control,
782such as album art or image, play state, track number and description, duration,
783genre, and more.</p>
784
785
786<p style="margin-top:1em;margin-bottom:.75em;"><strong>New media codecs and
787containers</strong></p>
788
789<p>Android 4.0 adds support for additional media types and containers to give
790developers access to the formats they need. For high-quality compressed images,
791the media framework adds support for WebP content. For video, the framework now
792supports streaming VP8 content. For streaming multimedia, the framework supports
793HTTP Live streaming protocol version 3 and encoding of ADTS-contained AAC
794content. Additionally, developers can now use Matroska containers for Vorbis and
795VP8 content.</p>
796
797
798<h3 id="connectivity-dev">New types of connectivity</h3>
799
800<p style="margin-top:1em;margin-bottom:.75em;"><strong>Wi-Fi Direct</strong></p>
801
802<p>Developers can use a framework API to discover and connect directly to nearby
803devices over a high-performance, secure Wi-Fi Direct connection. No internet
804connection or hotspot is needed.</p>
805
806<p>Wi-Fi Direct opens new opportunities for developers to add innovative
807features to their applications. Applications can use Wi-Fi Direct to share
808files, photos, or other media between devices or between a desktop computer and
809an Android-powered device. Applications could also use Wi-Fi Direct to stream
810media content from a peer device such as a digital television or audio player,
811connect a group of users for gaming, print files, and more.</p>
812
813
814<p style="margin-top:1em;margin-bottom:.75em;"><strong>Bluetooth Health Device
815Profile (HDP)</strong></p>
816
817<p>Developers can now build powerful medical applications that use Bluetooth to
818communicate with wireless devices and sensors in hospitals, fitness centers,
819homes, and elsewhere. Applications can collect and manage data from HDP source
820devices and transmit it to backend medical applications such as records systems,
821data analysis services, and others.</p>
822
823<p>Using a framework API, applications can use Bluetooth to discover nearby
824devices, establish reliable or streaming data channels, and manage data
825transmission. Applications can supply any IEEE 11073 Manager to retrieve and
826interpret health data from Continua-certified devices such as heart-rate
827monitors, blood meters, thermometers, and scales. </p>
828
829
830<h3 id="uicomp-dev">New UI components and capabilities</h3>
831
832<p style="margin-top:1em;margin-bottom:.75em;"><strong>Layout
833enhancements</strong></p>
834
835<p>A new layout, GridLayout, improves the performance of Android applications by
836supporting flatter view hierarchies that are faster to layout and render.
837Because hierarchies are flatter, developers can also manage alignments between
838components that are visually related to each other even when they are not
839logically related, for precise control over application UI. GridLayout is also
840specifically designed to be configured by drag-and-drop design tools such as the
841ADT Plug-in for Eclipse.</p>
842
843
844<p style="margin-top:1em;margin-bottom:.75em;"><strong>OpenGL ES texture
845views</strong></p>
846
847<p>A new TextureView object lets developers directly integrate OpenGL ES
848textures as rendering targets in a UI hierarchy. The object lets developers
849display and manipulate OpenGL ES rendering just as they would a normal view
850object in the hierarchy, including moving, transforming, and animating the view
851as needed. The TextureView object makes it easy for developers to embed camera
852preview, decoded video, OpenGL game scenes, and more. TextureView can be viewed
853as a more powerful version of the existing SurfaceView object, since it offers
854the same benefits of access to a GL rendering surface, with the added advantage
855of having that surface participate fully in the normal view hierarchy.</p>
856
857
858<p style="margin-top:1em;margin-bottom:.75em;"><strong>Hardware-accelerated 2D
859drawing</strong></p>
860
861<p>All Android-powered devices running Android 4.0 are required to support
862hardware-accelerated 2D drawing. Developers can take advantage of this to add
863great UI effects while maintaining optimal performance on high-resolution
864screens, even on phones. For example, developers can rely on accelerated
865scaling, rotation, and other 2D operations, as well as accelerated UI components
866such as TextureView and compositing modes such as filtering, blending, and
867opacity.</p>
868
869
870<h3 id="input-dev">New input types and text services</h3>
871
872<p style="margin-top:1em;margin-bottom:.75em;"><strong>Stylus input, button
873support, hover events</strong></p>
874
875<p>Android 4.0 includes full support for stylus input events, including tilt and
876distance axes, pressure, and related motion event properties. To help
877applications distinguish motion events from different sources, the platform adds
878distinct tool types for stylus, finger, mouse, and eraser. For improved input
879from multi-button pointing devices, the platform now provides distinct primary,
880secondary, and tertiary buttons, as well as back and forward buttons.
881Hover-enter and hover-exit events are also added, for improved navigation and
882accessibility. Developers can build on these new input features to add powerful
883interactions to their apps, such as precise drawing and gesturing, handwriting
884and shape recognition, improved mouse input, and others.</p>
885
886
887<p style="margin-top:1em;margin-bottom:.75em;"><strong>Text services API for
888integrating spelling checkers</strong></p>
889
890<p>Android 4.0 lets applications query available text services such as
891dictionaries and spell checkers for word suggestions, corrections, and similar
892data. The text services are external to the active IME, so developers can create
893and distribute dictionaries and suggestion engines that plug into the platform.
894When an application receives results from a text service &mdash; for example,
895word suggestions &mdash; it can display them in a dedicated suggestion popup
896window directly inside the text view, rather than relying on the IME to display
897them. </p>
898
899
900<h3 id="accessibility-dev">Enhanced accessibility APIs</h3>
901
902<p>Android 4.0 adds new accessibility features and an enhanced API to let
903developers improve the user experience in their apps, especially on devices that
904don’t have hardware buttons. For accessibility services such as screen readers
905in particular, the platform offers new APIs to query window content, for easier
906navigation, better feedback, and richer user interfaces.</p>
907
908
909<p style="margin-top:1em;margin-bottom:.75em;"><strong>Accessibility
910API</strong></p>
911
912<p>To let applications manage interactions more effectively when accessibility
913features are enabled, the platform adds accessibility events for
914explore-by-touch mode, scrolling, and text selection. For these and other
915events, the platform can attach a new object called an accessibility record that
916provides extra information about the event context.</p>
917
918<p>Using the accessibility record and related APIs, applications can now access
919the view hierarchy associated with an event. Applications can query for key
920properties such as parent and child nodes, available states, supported actions,
921screen position, and more. Applications can also request changes to certain
922properties to help manage focus and selected state. For example, an
923accessibility service could use these new capabilities to add convenient
924features such as screen-search by text. </p>
925
926
927<p style="margin-top:1em;margin-bottom:.75em;"><strong>Text-to-speech
928API</strong></p>
929
930<p>A new framework API lets developers write text-to-speech engines and make
931them available to any app requesting TTS capabilities.</p>
932
933
934<h3 id="data-dev">Efficient network usage</h3>
935
936<p>In Android 4.0, users can see how much network data their running apps are
937using. They can also set limits on data usage by network type and disable
938background data usage for specific applications. In this context, developers
939need to design their apps to run efficiently and follow best practices for
940checking the network connection. Android 4.0 provides network APIs to let
941applications meet those goals.</p>
942
943<p>As users move between networks or set limits on network data, the platform
944lets applications query for connection type and availability. Developers can use
945this information to dynamically manage network requests to ensure the best
946experience for users. Developers can also build custom network and data-usage
947options into their apps, then expose them to users directly from Settings by
948means of a new system Intent.</p>
949
950
951<h3 id="security-dev">Security for apps and content</h3>
952
953<p style="margin-top:1em;margin-bottom:.75em;"><strong>Secure management of
954credentials</strong></p>
955
956<p>Android 4.0 makes it easier for applications to manage authentication and
957secure sessions. A new keychain API and underlying encrypted storage let
958applications store and retrieve private keys and their corresponding certificate
959chains. Any application can use the keychain API to install and store user
960certificates and CAs securely.</p>
961
962
963<p style="margin-top:1em;margin-bottom:.75em;"><strong>Address Space Layout
964Randomization</strong></p>
965
966<p>Android 4.0 now provides address space layout randomization (ASLR) to help
967protect system and third party applications from exploitation due to
968memory-management issues.</p>
969
970
971<h3 id="enterprise-dev">Enhancements for Enterprise</h3>
972
973<p style="margin-top:1em;margin-bottom:.75em;"><strong>VPN client
974API</strong></p>
975
976<p>Developers can now build or extend their own VPN solutions on the platform
977using a new VPN API and underlying secure credential storage. With user
978permission, applications can configure addresses and routing rules, process
979outgoing and incoming packets, and establish secure tunnels to a remote server.
980Enterprises can also take advantage of a standard VPN client built into the
981platform that provides access to L2TP and IPSec protocols.</p>
982
983
984<p style="margin-top:1em;margin-bottom:.75em;"><strong>Device policy management
985for camera</strong></p>
986
987<p>The platform adds a new policy control for administrators who manage devices
988using an installed Device Policy Manager. Administrators can now remotely
989disable the camera on a managed device for users working in sensitive
990environments.</p>
991
992
993
994
995