blob: d7d14e9ad4add04037bfde063d9dcbcf6bc49c1c [file] [log] [blame]
Dirk Dougherty7b229ef2010-03-26 17:32:26 -07001page.title=Android 1.6 Platform
Dirk Doughertyee58d1b2009-10-16 15:25:15 -07002sdk.platform.version=1.6
3sdk.platform.apiLevel=4
4sdk.platform.majorMinor=minor
Dirk Doughertybca9f1b2009-11-18 23:06:16 -08005sdk.platform.releaseDate=December 2009
Dirk Doughertyee58d1b2009-10-16 15:25:15 -07006sdk.platform.deployableDate=October 2009
Dirk Doughertya6602f12009-08-27 16:26:43 -07007
8@jd:body
9
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070010<div id="qv-wrapper">
11<div id="qv">
12
13 <h2>In this document</h2>
14 <ol>
15 <li><a href="#features">Platform Highlights</a></li>
Dirk Dougherty7b229ef2010-03-26 17:32:26 -070016 <li><a href="#relnotes">Revisions</a></li>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070017 <li><a href="#apps">Built-in Applications</a></li>
18 <li><a href="#locs">Locales</a></li>
19 <li><a href="#skins">Emulator Skins</a></li>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070020 <li><a href="#api">Framework API</a>
21 <ol>
22 <li><a href="#api-level">API level</a></li>
23 <li><a href="#api-changes">API changes summary</a></li>
24 <li><a href="{@docRoot}sdk/api_diff/{@sdkPlatformApiLevel}/changes.html">API differences report &raquo;</a> </li>
25 </ol></li>
26 </ol>
27
28 <h2>See Also</h2>
29 <ol>
30 <li><a href="{@docRoot}sdk/adding-components.html">Adding SDK Components</a></li>
31 </ol>
32
33</div>
34</div>
35
Dirk Doughertya6602f12009-08-27 16:26:43 -070036<p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070037<em>API Level:</em>&nbsp;<strong>{@sdkPlatformApiLevel}</strong></p>
38
39<p>Android {@sdkPlatformVersion} is a {@sdkPlatformMajorMinor} platform release
Dirk Doughertybca9f1b2009-11-18 23:06:16 -080040deployable to Android-powered handsets since {@sdkPlatformDeployableDate}.
41The platform includes new features for users and developers, as well as changes
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070042in the Android framework API. </p>
43
Dirk Doughertybca9f1b2009-11-18 23:06:16 -080044<p>For developers, a new release of the Android {@sdkPlatformVersion} platform
45is available as a downloadable component for the Android SDK. The platform
46&mdash; Android 1.6 r2 &mdash; includes a fully compliant Android library and
47system image, as well as a set of emulator skins, sample applications, and minor
48development updates. The downloadable platform is fully compliant (API Level 4)
49and includes no external libraries.</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070050
51<p>To get started developing or testing against the Android
52{@sdkPlatformVersion} platform, use the Android SDK and AVD Manager tool to
Dirk Doughertybca9f1b2009-11-18 23:06:16 -080053download the latest Android 1.6 platform into your Android 1.6 or later SDK. For
54more information, see <a href="{@docRoot}sdk/adding-components.html">Adding SDK
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070055Components</a>.</p>
Dirk Doughertya6602f12009-08-27 16:26:43 -070056
57
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070058<h2 id="features">Platform Highlights</h2>
Dirk Doughertya6602f12009-08-27 16:26:43 -070059
Dirk Dougherty24db03a2009-09-09 13:33:45 -070060<p>For a list of new user features and platform highlights, see the <a
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070061href="http://developer.android.com/sdk/android-{@sdkPlatformVersion}-highlights.html">Android
62{@sdkPlatformVersion} Platform Highlights</a> document.</p>
63
Dirk Doughertya6602f12009-08-27 16:26:43 -070064
Dirk Dougherty7b229ef2010-03-26 17:32:26 -070065<h2 id="relnotes">Revisions</h2>
Dirk Doughertybca9f1b2009-11-18 23:06:16 -080066
Dirk Dougherty7b229ef2010-03-26 17:32:26 -070067<p>The sections below provide notes about successive releases of
68the Android {@sdkPlatformVersion} platform component for the Android SDK, as denoted by
69revision number. To determine what revision(s) of the Android
70{@sdkPlatformVersion} platforms are installed in your SDK environment, refer to
71the "Installed Packages" listing in the Android SDK and AVD Manager.</p>
Dirk Doughertybca9f1b2009-11-18 23:06:16 -080072
Dirk Dougherty7b229ef2010-03-26 17:32:26 -070073<script type="text/javascript">
74function toggleDiv(link) {
75 var toggleable = $(link).parent();
76 if (toggleable.hasClass("closed")) {
77 //$(".toggleme", toggleable).slideDown("fast");
78 toggleable.removeClass("closed");
79 toggleable.addClass("open");
80 $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/triangle-opened.png"));
81 } else {
82 //$(".toggleme", toggleable).slideUp("fast");
83 toggleable.removeClass("open");
84 toggleable.addClass("closed");
85 $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/triangle-closed.png"));
86 }
87 return false;
88}
89</script>
90<style>
91.toggleable {
92padding: .25em 1em;
93}
94.toggleme {
95 padding: 1em 1em 0 2em;
96 line-height:1em;
97}
98.toggleable a {
99 text-decoration:none;
100}
Dirk Dougherty0d1b0812010-04-07 17:05:16 -0700101.toggleme a {
102 text-decoration:underline;
103}
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700104.toggleable.closed .toggleme {
105 display:none;
106}
107#jd-content .toggle-img {
108 margin:0;
109}
110</style>
Dirk Doughertybca9f1b2009-11-18 23:06:16 -0800111
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700112<div class="toggleable opened">
113 <a href="#" onclick="return toggleDiv(this)">
114 <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-img" height="9px" width="9px" />
Dirk Dougherty0d1b0812010-04-07 17:05:16 -0700115 Android 1.6, Revision 3</a> <em>(May 2010)</em></a>
116 <div class="toggleme">
117<dl>
118<dt>Dependencies:</dt>
119<dd>
120<p>Requires SDK Tools r6 or higher.</p>
121</dd>
122<dt>Tools:</dt>
123<dd>
124<ul>
125<li>Adds support for library projects in the Ant build system.</li>
126</ul>
127</dd>
128</dl>
129 </div>
130</div>
131
132<div class="toggleable closed">
133 <a href="#" onclick="return toggleDiv(this)">
134 <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-img" height="9px" width="9px" />
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700135 Android 1.6, Revision 2</a> <em>(December 2009)</em></a>
136 <div class="toggleme">
137<dl>
138<dt>Dependencies:</dt>
139<dd>
140<p>Requires SDK Tools r4 or higher.</p>
141</dd>
Dirk Doughertybca9f1b2009-11-18 23:06:16 -0800142
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700143<dt>API related:</dt>
144<dd>
145<ul>
146<li>Properly exposes CDMA-related constants in <code><a href="{@docRoot}reference/android/telephony/TelephonyManager.html">android.telephony.TelephonyManager</a></code>: <code>DATA_ACTIVITY_DORMANT</code>,
Dirk Doughertybca9f1b2009-11-18 23:06:16 -0800147<code>PHONE_TYPE_CDMA</code>, <code>NETWORK_TYPE_CDMA</code>,
148<code>NETWORK_TYPE_EVDO_0</code>, <code>NETWORK_TYPE_EVDO_A</code>, and
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700149<code>NETWORK_TYPE_1xRTT</code>.</li>
150</ul>
151</dd>
152<dt>System image:</dt>
153<dd>
154<ul>
155<li>Fixes bug so that Bitmap's density is now propagated through Parcelable.</li>
156<li>Fixes NinePatchDrawable to properly scale its reported padding for compatibility mode.</li>
157<li>Fixes TextView to properly compute styled font metrics based on the screen density.</li>
Dirk Doughertybca9f1b2009-11-18 23:06:16 -0800158<li>Updates kernel to 2.6.29, to match kernel on commercially
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700159available Android-powered devices.</li>
160</ul>
161</dd>
162<dt>Tools:</dt>
163<dd>
164<ul>
Dirk Doughertybca9f1b2009-11-18 23:06:16 -0800165<li>Adds new Ant build system with support for Emma instrumentation projects
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700166(code coverage).</li>
167<li>Fixes emulator skins to properly emulate d-pad in landscape mode.</li>
168<li>Fixes density rendering in the layout editor in ADT.</li>
169</ul>
170</dd>
171</dl>
172 </div>
173</div>
Dirk Doughertybca9f1b2009-11-18 23:06:16 -0800174
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700175<div class="toggleable closed">
176 <a href="#" onclick="return toggleDiv(this)">
177 <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
178 Android 1.6, Revision 1</a> <em>(September 2009)</em></a>
179 <div class="toggleme">
180<dl>
181<dt>Dependencies</dt>
182<dd>
183<p>Requires SDK Tools r3 or higher.</p>
184</dd>
185</dl>
186 </div>
187</div>
Dirk Doughertybca9f1b2009-11-18 23:06:16 -0800188
Dirk Doughertya6602f12009-08-27 16:26:43 -0700189<h2 id="apps">Built-in Applications</h2>
190
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700191<p>The system image included in the downloadable platform provides these
192built-in applications:</p>
193
194<table style="border:0;padding-bottom:0;margin-bottom:0;">
195<tr>
196<td style="border:0;padding-bottom:0;margin-bottom:0;">
Dirk Doughertya6602f12009-08-27 16:26:43 -0700197 <ul>
198 <li>Alarm Clock</li>
199 <li>Browser</li>
200 <li>Calculator</li>
201 <li>Camcorder</li>
202 <li>Camera</li>
203 <li>Contacts</li>
204 <li>Custom Locale (developer app)</li>
205 <li>Dev Tools (developer app)</li>
206 <li>Dialer</li>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700207 </ul>
208</td>
209<td style="border:0;padding-bottom:0;margin-bottom:0;padding-left:5em;">
210 <ul>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700211 <li>Email</li>
212 <li>Gallery</li>
213 <li>Gestures Builder</li>
214 <li>IME for Japanese text input</li>
215 <li>Messaging</li>
216 <li>Music</li>
217 <li>Settings</li>
218 <li>Spare Parts (developer app)</li>
219 </ul>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700220</td>
221</tr>
222</table>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700223
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700224<h2 id="locs" style="margin-top:.75em;">Locales</h2>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700225
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700226<p>The system image included in the downloadable platform provides a variety of
227built-in locales. In some cases, region-specific strings are available for the
228locales. In other cases, a default version of the language is used. The
Dirk Doughertyeeb0b252009-10-22 16:08:32 -0700229languages that are available in the Android {@sdkPlatformVersion} system
230image are listed below (with <em>language</em>_<em>country/region</em>
231locale descriptor).</p>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700232
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700233<table style="border:0;margin-bottom:0;padding-bottom:0;">
Dirk Doughertya6602f12009-08-27 16:26:43 -0700234<tr>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700235<td style="border:0;padding-bottom:0;margin-bottom:0;">
236<ul>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700237<li>Chinese, PRC (zh_CN)</li>
238<li>Chinese, Taiwan (zh_TW)</li>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700239<li>Czech (cs_CZ)</li>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700240<li>Dutch, Netherlands (nl_NL)</li>
241<li>Dutch, Belgium (nl_BE)</li>
242<li>English, US (en_US)</li>
243<li>English, Britain (en_GB)</li>
244<li>English, Canada (en_CA)</li>
245<li>English, Australia (en_AU)</li>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700246<li>English, New Zealand (en_NZ)</li>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700247<li>English, Singapore(en_SG)</li>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700248<li>French, France (fr_FR)</li>
249<li>French, Belgium (fr_BE)</li>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700250</ul>
251</td>
252<td style="border:0;padding-bottom:0;margin-bottom:0;padding-left:5em;">
Dirk Doughertya6602f12009-08-27 16:26:43 -0700253<li>French, Canada (fr_CA)</li>
254<li>French, Switzerland (fr_CH)</li>
255<li>German, Germany (de_DE)</li>
256<li>German, Austria (de_AT)</li>
257<li>German, Switzerland (de_CH)</li>
258<li>German, Liechtenstein (de_LI)</li>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700259<li>Italian, Italy (it_IT)</li>
260<li>Italian, Switzerland (it_CH)</li>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700261<li>Japanese (ja_JP)</li>
262<li>Korean (ko_KR)</li>
263<li>Polish (pl_PL)</li>
264<li>Russian (ru_RU)</li>
265<li>Spanish (es_ES)</li>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700266</td>
267</tr>
268</table>
269
Dirk Dougherty24db03a2009-09-09 13:33:45 -0700270<p>Localized UI strings match the locales that are accessible
271through Settings.</p>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700272
Dirk Doughertyeeb0b252009-10-22 16:08:32 -0700273<h2 id="skins">Emulator Skins</h2>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700274
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700275<p>The downloadable platform includes a set of emulator skins that you can
276use for modeling your application in different screen sizes and resolutions.
277The emulator skins are: </p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700278
279<ul>
280 <li>
281 QVGA (240x320, low density, small screen)
282 </li>
283 <li>
284 HVGA (320x480, medium density, normal screen)
285 </li>
286 <li>
287 WVGA800 (480x800, high density, normal screen)
288 </li>
289 <li>
290 WVGA854 (480x854 high density, normal screen)
291 </li>
292</ul>
293
294<p>For more information about how to develop an application that displays and functions properly on all Android-powered devices, see <a href="{@docRoot}guide/practices/screens_support.html">Supporting Multiple Screens</a>.</p>
295
296
297<h2 id="api">Framework API</h2>
298
299<p>The sections below provide information about the application framework API provided by the Android {@sdkPlatformVersion} platform. </p>
300
301
302<h3 id="api-level">API level</h3>
303
304<p>The Android {@sdkPlatformVersion} platform delivers an updated version of the framework
305API. As with previous versions, the Android {@sdkPlatformVersion} API
306is assigned an integer identifier &mdash; <strong>{@sdkPlatformApiLevel}</strong> &mdash; that is
307stored in the system itself. This identifier, called the "API Level", allows the
308system to correctly determine whether an application is compatible with
309the system, prior to installing the application. </p>
310
311<p>To use APIs introduced in Android {@sdkPlatformVersion} in your application, you need to
Dirk Doughertyeeb0b252009-10-22 16:08:32 -0700312set the proper value, "{@sdkPlatformApiLevel}", in the attributes of the <code>&lt;uses-sdk&gt;</code>
313element in your application's manifest. </p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700314
315<p>For more information about how to use API Level, see the <a
316href="{@docRoot}guide/appendix/api-levels.html">API Levels</a> document. </p>
317
318<h3 id="api-changes">API changes summary</h3>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700319
Dirk Dougherty24db03a2009-09-09 13:33:45 -0700320<h4 id="UIFramework">UI framework</h4>
321 <ul>
322 <li>New classes in {@link android.view.animation}
323 to control the behavior of animations:
324 <ul>
325 <li><code>AnticipateInterpolator</code></li>
326 <li><code>AnticipateOvershootInterpolator</code></li>
327 <li><code>BounceInterpolator</code></li>
328 <li><code>OvershootInterpolator</code></li>
329 </ul>
330 </li>
331 <li>New XML attribute <code>android:onClick</code> to specify a View's
332<a href="/reference/android/view/View.OnClickListener.html">View.OnClickListener</a>
333from a layout file.
334 </li>
335 <li>New support for dealing with varying screen densities. Density
336information is associated with Bitmap and Canvas for performing the
337correct scaling. The framework will automatically scale bitmaps and
338nine-patches based on the density the resource was found under and the
339density of the screen, etc.
Dirk Doughertyeeb0b252009-10-22 16:08:32 -0700340 </li><p>To use APIs introduced in Android {@sdkPlatformVersion} in your application, you need to
341set the proper value, "{@sdkPlatformApiLevel}", in the attributes of the <code>&lt;uses-sdk&gt;</code>
342element in your application's manifest. </p>
Dirk Dougherty24db03a2009-09-09 13:33:45 -0700343 </ul>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700344
Dirk Dougherty24db03a2009-09-09 13:33:45 -0700345<h4>Search framework</h4>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700346 <ul>
Dirk Dougherty24db03a2009-09-09 13:33:45 -0700347 <li>Applications can now expose relevant content to users as search
348suggestions in the Quick Search Box, a new device-wide search capability that is
349accessible from the home screen. To support this, the search framework adds new
350attributes to the searchable metadata file. For complete information, see the
351{@link android.app.SearchManager SearchManager} documentation.
352 </li>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700353 </ul>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700354
Dirk Dougherty24db03a2009-09-09 13:33:45 -0700355<h4>Accessibility framework</h4>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700356 <ul>
357 <li>New {@link android.view.accessibility android.accessibility} package
358that includes classes for capturing accessibility events and forwarding them to
359an {@link android.accessibilityservice AccessibilityService} handler. </li>
360 <li>New {@link android.accessibilityservice AccessibilityService} package
361that lets your application track user events and provide visual, audible, or
362haptic feedback to the user. </li>
363 </ul>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700364
Dirk Dougherty24db03a2009-09-09 13:33:45 -0700365<h4>Gesture Input</h4>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700366 <ul>
367 <li>New {@link android.gesture gesture} API for creating, recognizing,
368loading, and saving gestures.</li>
369 </ul>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700370
Dirk Dougherty24db03a2009-09-09 13:33:45 -0700371<h4>Text-to-speech</h4>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700372 <ul>
Dirk Dougherty24db03a2009-09-09 13:33:45 -0700373 <li>New {@link android.speech.tts android.speech.tts} package provides
Dirk Doughertya6602f12009-08-27 16:26:43 -0700374classes for synthesizing speech from text, for immediate playback or to create a
375sound file.</li>
376 </ul>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700377
Dirk Dougherty24db03a2009-09-09 13:33:45 -0700378<h4>Graphics</h4>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700379 <ul>
380 <li>Classes in {@link android.graphics android.graphics} now support scaling
381for different screen densities.</li>
382 </ul>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700383
Dirk Dougherty24db03a2009-09-09 13:33:45 -0700384<h4>Telephony</h4>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700385 <ul>
386 <li>New {@link android.telephony.SmsManager SmsManager} and other classes
387for sending and receiving SMS messages.</li>
388 </ul>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700389
Dirk Dougherty24db03a2009-09-09 13:33:45 -0700390<h4>Utilities</h4>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700391 <ul>
392 <li>New {@link android.util.DisplayMetrics DisplayMetrics} fields for
393determining the density of the current device screen.</li>
394 </ul>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700395
Dirk Dougherty24db03a2009-09-09 13:33:45 -0700396<h4 id="AndroidManifest">Android Manifest elements</h4>
397
398 <ul>
399 <li>New <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html">{@code
400 &lt;supports-screens>}</a> element lets you specify the device screen sizes that your
401 application is designed and tested to support, where "size" is a combination
402 of resolution and density. If your application is run on a device whose screen
403 size is not specified in the <code>&lt;supports-screen&gt;</code> element, the system
404 displays the application in <em>compatibility mode</em>, which performs best-effort scaling
405 of the application UI to match the resolution and density of the screen.
406
407 <p>The attributes available for defining an application's screen support are:
408
409 <ul>
410
411 <li><code>smallScreen</code>: Boolean value that indicates whether the
412 application is designed to run on devices with small screens.
413 Examples: QVGA low density; VGA high density.
414 </li>
415 <li><code>normalScreens</code>: Boolean value that indicates whether
416 the application is designed to run on devices with normal screens.
417 Examples: WQVGA low density; HVGA medium density; WVGA high density.
418 </li>
419 <li><code>largeScreens</code>: Boolean value that indicates whether
420 the application is designed to run on devices with significantly
421 larger screens, such that special care may be required on
422 the application's part to make proper use of the screen area.
423 Examples: VGA medium density; WVGA medium density.
424 </li>
425 <li><code>anyDensity</code>: Boolean value that indicates whether
426 the application can accommodate any screen density.
427 </li>
428 <li><code>resizable</code>: Boolean value that indicates whether
429 the application can expand its layout to fit slightly larger screens.
430 </li>
431 </ul>
432 </p>
433 </li>
434
435 <li>New <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">{@code &lt;uses-feature>}</a>
436 element lets an application specify hardware (or other)
437 features that it requires to function normally. When an application
438 specifies such features, the system allows the application to be installed only
439 on devices that offer the required features. The element supports these
440 attributes:
441 <ul>
442 <li><code>name</code>: The name of the feature required by the application. Currently accepts
443 "android.hardware.camera" and "android.hardware.camera.autofocus" values, which specify that a
444 camera and camera autofocus are required, respectively.</li>
445 <li><code>glEsVersion</code>: Indicates the minimum version of OpenGL ES required.</li>
446 </ul>
447 </li>
448 <li>New attributes for the
449 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">{@code &lt;uses-sdk>}</a> element:
450 <ul>
Dirk Dougherty7500f342009-12-01 16:45:14 -0800451 <li><code>targetSdkVersion</code>: Indicates the API Level that the application is targeting.
Dirk Dougherty24db03a2009-09-09 13:33:45 -0700452 It is able to run on older versions (down to minSdkVersion), but was explicitly tested to
453 work with the version specified here. Specifying this version allows the platform to
454 disable compatibility code that is not required or enable newer features that are not
455 available to older applications. </li>
Dirk Dougherty7500f342009-12-01 16:45:14 -0800456 <li><code>maxSdkVersion</code>: Indicates the maximum API Level on which an application is
457 designed to run. <strong>Important:</strong> Please read the <a
458 href="{@docRoot}guide/topics/manifest/uses-sdk-element.html"><code>&lt;uses-sdk&gt;</code></a>
459 documentation before using this attribute. </li>
Dirk Dougherty24db03a2009-09-09 13:33:45 -0700460 </ul>
461 </li>
462
463 </li>
464 </ul>
465
466<h4>New Permissions</h4>
467
468 <ul>
469 <li>{@link android.Manifest.permission#CHANGE_WIFI_MULTICAST_STATE
470 CHANGE_WIFI_MULTICAST_STATE}: Allows applications to enter Wi-Fi
471 Multicast mode.
472 </li>
473 <li>{@link android.Manifest.permission#GLOBAL_SEARCH}: Allows the
474 global search system to access the data of a specified content provider.
475 </li>
476 <li>{@link android.Manifest.permission#INSTALL_LOCATION_PROVIDER INSTALL_LOCATION_PROVIDER}:
477 Allows an application to install a location provider into the Location Manager.
478 </li>
479 <li>{@link android.Manifest.permission#READ_HISTORY_BOOKMARKS READ_HISTORY_BOOKMARKS}:
480 Allows an application to read (but not write) the user's browsing history
481 and bookmarks.
482 </li>
483 <li>{@link android.Manifest.permission#WRITE_HISTORY_BOOKMARKS WRITE_HISTORY_BOOKMARKS}:
484 Allows an application to write (but not read) the user's browsing history
485 and bookmarks.
486 </li>
487 <li>{@link android.Manifest.permission#WRITE_EXTERNAL_STORAGE WRITE_EXTERNAL_STORAGE}:
488 Allows an application to write to external storage. Applications using API Level 3
489 and lower will be implicitly granted this permission (and this will be visible to
490 the user); Applications using API Level 4 or higher must explicitly request this
491 permission.
492 </li>
493 </ul>
494
Dirk Doughertya6602f12009-08-27 16:26:43 -0700495
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700496<h3 id="api-diff">API differences report</h3>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700497
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700498<p>For a detailed view of API changes in Android {@sdkPlatformVersion} (API Level {@sdkPlatformApiLevel}), as compared to
499the previous version, see the <a href="{@docRoot}sdk/api_diff/{@sdkPlatformApiLevel}/changes.html">API
500Differences Report</a>.</p>