Home | History | Annotate | Download | only in versions
      1 page.title=Android 1.5 Platform
      2 excludeFromSuggestions=true
      3 sdk.platform.version=1.5
      4 sdk.platform.apiLevel=3
      5 sdk.platform.majorMinor=major
      6 
      7 @jd:body
      8 
      9 <div id="qv-wrapper">
     10 <div id="qv">
     11 
     12 <h2>In this document</h2>
     13 <ol>
     14   <li><a href="#features">Platform Highlights</a></li>
     15   <li><a href="#relnotes">Revisions</a></li>
     16   <li><a href="#api-level">API Level</a></li>
     17   <li><a href="#api">Framework API Changes</a>
     18   <li><a href="#apps">Built-in Applications</a></li>
     19   <li><a href="#locs">Locales</a></li>
     20   <li><a href="#skins">Emulator Skins</a></li>
     21 
     22     </ol>
     23   </li>
     24 </ol>
     25 
     26 <h2>Reference</h2>
     27 <ol>
     28 <li><a
     29 href="{@docRoot}sdk/api_diff/{@sdkPlatformApiLevel}/changes.html">API
     30 Differences Report &raquo;</a> </li>
     31 </ol>
     32 
     33 <h2>See Also</h2>
     34 <ol>
     35   <li><a href="{@docRoot}sdk/exploring.html">Exploring the SDK</a></li>
     36 </ol>
     37 
     38 </div>
     39 </div>
     40 
     41 <p>
     42 <em>API Level:</em>&nbsp;<strong>{@sdkPlatformApiLevel}</strong></p>
     43 
     44 <p>Android {@sdkPlatformVersion} is a {@sdkPlatformMajorMinor} platform release
     45 deployable to Android-powered handsets starting in May 2009.
     46 The release includes new features for users and developers, as well as changes
     47 in the Android framework API. </p>
     48 
     49 <p>For developers, the Android {@sdkPlatformVersion} platform is available as a
     50 downloadable component for the Android SDK. The downloadable platform includes a
     51 fully compliant Android library and system image, as well as a set of emulator
     52 skins, sample applications, and more. The downloadable platform is fully
     53 compliant and includes no external libraries. </p>
     54 
     55 <p>To get started developing or testing against the Android
     56 {@sdkPlatformVersion} platform, use the Android SDK and AVD Manager tool to
     57 download the platform into your Android 1.6 or later SDK. For more information,
     58 see <a href="{@docRoot}sdk/exploring.html">Exploring the
     59 SDK</a>.</p>
     60 
     61 
     62 <h2 id="features">Platform Highlights</h2>
     63 
     64 <p>For a list of new user features and platform highlights, see the <a
     65 href="http://developer.android.com/about/versions/android-{@sdkPlatformVersion}-highlights.html">Android 
     66 {@sdkPlatformVersion} Platform Highlights</a> document.</p>
     67 
     68 <h2 id="relnotes">Revisions</h2>
     69 
     70 <p>The sections below provide notes about successive releases of
     71 the Android {@sdkPlatformVersion} platform component for the Android SDK, as denoted by
     72 revision number. To determine what revision(s) of the Android
     73 {@sdkPlatformVersion} platforms are installed in your SDK environment, refer to
     74 the "Installed Packages" listing in the Android SDK and AVD Manager.</p>
     75 
     76 <script type="text/javascript">
     77 function toggleDiv(link) {
     78   var toggleable = $(link).parent();
     79   if (toggleable.hasClass("closed")) {
     80     //$(".toggleme", toggleable).slideDown("fast");
     81     toggleable.removeClass("closed");
     82     toggleable.addClass("open");
     83     $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/triangle-opened.png"));
     84   } else {
     85     //$(".toggleme", toggleable).slideUp("fast");
     86     toggleable.removeClass("open");
     87     toggleable.addClass("closed");
     88     $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/triangle-closed.png"));
     89   }
     90   return false;
     91 }
     92 </script>
     93 <style>
     94 .toggleable {
     95   padding: .25em 1em 0em 1em;
     96   margin-bottom: 0;
     97 }
     98 .toggleme {
     99   padding: 1em 1em 0 2em;
    100   line-height:1em;
    101 }
    102 .toggleable a {
    103   text-decoration:none;
    104 }
    105 .toggleme a {
    106   text-decoration:underline;
    107 }
    108 .toggleable.closed .toggleme {
    109   display:none;
    110 }
    111 #jd-content .toggle-img {
    112   margin:0;
    113 }
    114 </style>
    115 
    116 <div class="toggleable opened">
    117   <a href="#" onclick="return toggleDiv(this)">
    118         <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-img" height="9px" width="9px" />
    119         Android 1.5, Revision 4</a> <em>(May 2010)</em></a>
    120   <div class="toggleme">
    121 <dl>
    122 <dt>Dependencies:</dt>
    123 <dd>
    124 <p>Requires SDK Tools r6 or higher.</p>
    125 </dd>
    126 
    127 <dt>Tools:</dt>
    128 <dd>
    129 <ul> 
    130 <li>Adds support for library projects in the Ant build system.</li>
    131 <li>Fixes test project build in the Ant build system.</li>
    132 </ul> 
    133 </dd>
    134 
    135 </dl>
    136  </div>
    137 </div>
    138 
    139 <div class="toggleable closed">
    140   <a href="#" onclick="return toggleDiv(this)">
    141         <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
    142         Android 1.5, Revision 3</a> <em>(July 2009)</em></a>
    143   <div class="toggleme">
    144 <dl>
    145 <dt>Dependencies:</dt>
    146 <dd>
    147 <p>Requires SDK Tools r3 or higher.</p>
    148 </dd>
    149 </dl>
    150  </div>
    151 </div>
    152 
    153 <div class="toggleable closed">
    154   <a href="#" onclick="return toggleDiv(this)">
    155         <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
    156         Android 1.5, Revision 2</a> <em>(May 2009)</em></a>
    157   <div class="toggleme">
    158 <p>Not available as an SDK component &mdash; please use Android 1.5, r3 instead. </p>
    159  </div>
    160 </div>
    161 
    162 <div class="toggleable closed">
    163   <a href="#" onclick="return toggleDiv(this)">
    164         <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
    165         Android 1.5, Revision 1</a> <em>(April 2009)</em></a>
    166   <div class="toggleme">
    167 <p>Not available as an SDK component &mdash; please use Android 1.5, r3 instead. </p>
    168  </div>
    169 </div>
    170 
    171 
    172 <h2 id="api-level">API Level</h2>
    173 
    174 <p>The Android {@sdkPlatformVersion} platform delivers an updated version of
    175 the framework API. The Android {@sdkPlatformVersion} API
    176 is assigned an integer identifier &mdash;
    177 <strong>{@sdkPlatformApiLevel}</strong> &mdash; that is
    178 stored in the system itself. This identifier, called the "API Level", allows the
    179 system to correctly determine whether an application is compatible with
    180 the system, prior to installing the application. </p>
    181 
    182 <p>To use APIs introduced in Android {@sdkPlatformVersion} in your
    183 application, you need to set the proper value, "{@sdkPlatformApiLevel}", in the
    184 <code>android:minSdkVersion</code> attributes of the <code>&lt;uses-sdk&gt;</code>
    185 element in your application's manifest. </p>
    186 
    187 <p>For more information about how to use API Level, see the <a
    188 href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API Levels</a> document. </p>
    189 
    190 
    191 <h2 id="api">Framework API Changes</h2>
    192 
    193 <p>The sections below provide information about the application framework API provided by the Android {@sdkPlatformVersion} platform. </p>
    194 
    195 <h3>UI framework</h3>
    196   <ul>
    197     <li>Framework for easier background/UI thread interaction</li>
    198     <li>New {@link android.widget.SlidingDrawer SlidingDrawer} widget</li>
    199     <li>New {@link android.widget.HorizontalScrollView HorizontalScrollview} widget</li>
    200   </ul>
    201 
    202 <h3>AppWidget framework</h3>
    203   <ul>
    204     <li>APIs for creating secure home screen {@link android.appwidget
    205 AppWidgets}. For information about how to use AppWidgets, see the Developer's
    206 Guide <a href="{@docRoot}guide/topics/appwidgets/index.html">AppWidgets</a>
    207 documentation. Also see <a
    208 href="http://android-developers.blogspot.com/2009/04/introducing-home-screen-widgets-and.html">
    209 Introducing home screen widgets and the AppWidget
    210 framework</a> on the Android Developer's Blog.</li>
    211     <li>APIs for populating {@link android.provider.LiveFolders Live Folders}
    212         with custom content.</li>
    213   </ul>
    214 
    215 <h3>Media framework</h3>
    216   <ul>
    217     <li>Raw audio recording and playback APIs</li>
    218     <li>Interactive MIDI playback engine</li>
    219     <li>Video recording APIs for developers (3GP format)</li>
    220     <li>Video and photo sharing Intents</li>
    221     <li>Media search Intent</li>
    222   </ul>
    223 
    224 <h3>Input Method framework </h3>
    225    <ul>
    226     <li>{@link android.inputmethodservice.InputMethodService Input Method
    227         Service} framework</li>
    228     <li>Text-prediction engine</li>
    229     <li>Ability to provide downloadable IMEs to users</li>
    230   </ul>
    231 
    232 <h3>Application-defined hardware requirements</h3>
    233 
    234 <p>Applications can now use a new element in their manifest files, <a
    235 href="{@docRoot}guide/topics/manifest/uses-configuration-element.html"><code>&lt;uses-configuration&gt;</code></a>
    236  to indicate to the Android system what hardware features
    237 they require in order to function properly. For example, an application might
    238 use the element to specify that it requires a physical keyboard or a particular
    239 navigation device, such as a trackball. Prior to installing the application, the
    240 Android system checks the attributes defined for the
    241 <code>&lt;uses-configuration&gt;</code> element and allows the installation to
    242 continue only if the required hardware is present.</p>
    243 
    244 <h3>Speech recognition framework</h3>
    245     <ul>
    246     <li>Support for using speech recognition libraries via Intent. See {@link
    247 android.speech.RecognizerIntent RecognizerIntent}.</li>
    248   </ul>
    249 
    250 <h3>Miscellaneous API additions</h3>
    251   <ul>
    252     <li>LocationManager - Applications can get location change updates via
    253         Intent</li>
    254     <li>WebView - Touch start/end/move/cancel DOM event support</li>
    255     <li>Redesigned {@link android.hardware.SensorManager Sensor Manager
    256         APIs}</li>
    257     <li>GLSurfaceView - convenience framework for creating OpenGL
    258         applications</li>
    259     <li>Broadcast Intent for app update install succeeded - for smoother app
    260         upgrade experience</li>
    261   </ul>
    262 
    263 
    264 <h3 id="api-diff">API differences report</h3>
    265 
    266 <p>For a detailed view of API changes in Android {@sdkPlatformVersion} (API Level {@sdkPlatformApiLevel}), as compared to 
    267 the previous version, see the <a href="{@docRoot}sdk/api_diff/{@sdkPlatformApiLevel}/changes.html">API 
    268 Differences Report</a>.</p>
    269 
    270 
    271 <h2 id="apps">Built-in Applications</h2>
    272 
    273 <p>The system image included in the downloadable platform provides these
    274 built-in applications:</p>
    275 
    276 <table style="border:0;padding-bottom:0;margin-bottom:0;">
    277 <tr>
    278 <td style="border:0;padding-bottom:0;margin-bottom:0;">
    279 	<ul>
    280 	<li>Alarm Clock</li>
    281 	<li>Browser</li>
    282 	<li>Calculator</li>
    283 	<li>Camcorder</li>
    284 	<li>Camera</li>
    285 	<li>Contacts</li>
    286 	<li>Custom Locale (developer app)</li>
    287 	<li>Dev Tools (developer app)</li>
    288 	</ul>
    289 </td>
    290 <td style="border:0;padding-bottom:0;margin-bottom:0;padding-left:5em;">
    291 	<ul>
    292 	<li>Dialer</li>
    293 	<li>Email</li>
    294 	<li>Gallery</li>
    295 	<li>IME for Japanese text input</li>
    296 	<li>Messaging</li>
    297 	<li>Music</li>
    298 	<li>Settings</li>
    299 	<li>Spare Parts (developer app)</li>
    300 	</ul>
    301 </td>
    302 </tr>
    303 </table>
    304 
    305 <h2 id="locs" style="margin-top:.75em;">Locales</h2>
    306 
    307 <p>The system image included in the downloadable platform provides a variety of
    308 built-in locales. In some cases, region-specific strings are available for the
    309 locales. In other cases, a default version of the language is used. The
    310 languages that are available in the Android {@sdkPlatformVersion} system 
    311 image are listed below (with <em>language</em>_<em>country/region</em> 
    312 locale descriptor).</p>
    313 
    314 <table style="border:0;padding-bottom:0;margin-bottom:0;">
    315 <tr>
    316 <td style="border:0;padding-bottom:0;margin-bottom:0;">
    317 <ul>
    318 <li>Chinese, PRC (zh_CN)</li>
    319 <li>Chinese, Taiwan (zh_TW)</li>
    320 <li>Czech (cs_CZ)</li>
    321 <li>Dutch, Netherlands (nl_NL)</li>
    322 <li>Dutch, Belgium (nl_BE)</li>
    323 <li>English, US (en_US)</li>
    324 <li>English, Britain (en_GB)</li>
    325 <li>English, Canada (en_CA)</li>
    326 <li>English, Australia (en_AU)</li>
    327 <li>English, New Zealand (en_NZ)</li>
    328 <li>English, Singapore(en_SG)</li>
    329 <li>French, France (fr_FR)</li>
    330 <li>French, Belgium (fr_BE)</li>
    331 </ul>
    332 </td>
    333 <td style="border:0;padding-bottom:0;margin-bottom:0;padding-left:5em;">
    334 <li>French, Canada (fr_CA)</li>
    335 <li>French, Switzerland (fr_CH)</li>
    336 <li>German, Germany (de_DE)</li>
    337 <li>German, Austria (de_AT)</li>
    338 <li>German, Switzerland (de_CH)</li>
    339 <li>German, Liechtenstein (de_LI)</li>
    340 <li>Italian, Italy (it_IT)</li>
    341 <li>Italian, Switzerland (it_CH)</li>
    342 <li>Japanese (ja_JP)</li>
    343 <li>Korean (ko_KR)</li>
    344 <li>Polish (pl_PL)</li>
    345 <li>Russian (ru_RU)</li>
    346 <li>Spanish (es_ES)</li>
    347 </td>
    348 </tr>
    349 </table>
    350 
    351 <p>Localized UI strings match the locales that are accessible 
    352 through Settings.</p>
    353 
    354 <h2 id="skins">Emulator Skins</h2>
    355 
    356 <p>The downloadable platform includes a set of emulator skins that you can use for modeling your application in different screen sizes and resolutions. The emulator skins are: </p>
    357 
    358 <ul>
    359   <li>
    360     QVGA-P (240x320, low density, small screen)
    361   </li>
    362   <li>
    363     QVGA-L (320x480, low density, small screen)
    364   </li>
    365   <li>
    366     HVGA (320x480, medium density, normal screen)
    367   </li>
    368   <li>
    369     HVGA-P (320x480, medium density, normal screen)
    370   </li>
    371   <li>
    372     HVGA-L (320x480, medium density, normal screen)
    373   </li>
    374 </ul>
    375 
    376 <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>
    377