SDK Release Notes

This document provides version-specific information about Android SDK releases. For the latest known issues, please ensure that you're viewing this page at: http://developer.android.com/sdk/RELEASENOTES.html.

Android 1.5 SDK, Release 1

This SDK provides updates to the development tools and Android system that you use to create applications for compliant Android-powered devices.

Release Overview

This SDK release includes many new features for developers. Highlights of the changes include:

  • Multiple versions of the Android platform are included (Android 1.1, Android 1.5). The tools are updated to let you deploy your application on any platform in the SDK, which helps you ensure forward-compitility and, if applicable, backward-compatibility.
  • Introduces Android Virtual Devices — (AVD) configurations of options that you run in the emulator to better model actual devices. Each AVD gets its own dedicated storage area, making it much easier to work with multiple emulators that are running concurrently.
  • Support for SDK add-ons, which extend the Android SDK to give you access to one or more external Android libraries and/or a customized (but compliant) system image that can run in the emulator.
  • The new Eclipse ADT plugin (version 0.9.x) offers new Wizards to let you create projects targetted for specific Android configurations, generate XML resources (such as layouts, animations, and menus), generate alternate layouts, and export and sign your application for publishing.
  • Improved JUnit support in ADT
  • Easier profiling of performance
  • Easier management of localized applications. You can now include or exclude locale resources when building your APK from a single Android project.
  • A new tool called "android" replaces the activitycreator script.

For details about the Android platforms included in the SDK — including bug fixes, features, and API changes — please read the Version Notes documents available at left. For a list of Android platforms included in this release, see the Download page.

Installation and Upgrade Notes

If you've been developing an application using an Android 1.1 SDK, you need to make a few changes to your development environment to migrate to the new SDK. Tools and documentation are provided to assist you. No changes to the source code of an existing application should be needed, provided that your application is not using Android internal structures or APIs.

To ensure that your existing application will work properly on a device running the latest version of the Android platform, you are strongly encouraged to migrate the application to the new SDK, compile it using the platform matching the application's original API Level, and run it against the most current platform.

If you're installing the Android SDK for the first time, please see the instructions in Installing the SDK.

SDK Add-Ons

This version of the SDK introduces support for SDK add-ons, which extend the Android SDK to give you access to one or more external Android libraries and/or a customized (but compliant) system image that can run in the emulator. The purpose of an SDK add-on is to give you a way to develop applications for a specific actual device (or family of devices) that extends the APIs available to Android applications through external libraries or system customizations.

From the perspective of your Android development environment, an SDK add-on is similar to any of the Android platform targets included in the SDK — it includes an external library, a system image, as well as custom emulator skins and system properties. The add-on differs in that the Android platform it provides may include customized UI, resources, or behaviors, a different set of preinstalled applications, or other similar modifications.

The SDK includes a single SDK add-on — the Google APIs add-on. The Google APIs add-on gives your application access to the com.google.android.maps external library that is included on many (if not most) Android-powered devices. The Google APIs add-on also includes a Geocoder backend service implementation. For more information, see the "Maps External Library" section below.

Android Virtual Devices (AVDs)

The SDK now gives you the capability to compile an application against any one of several system targets, then run it in the emulator on top of any compatible system image. There are two types of targets:

  • Targets that represent core Android platform versions.
  • Targets that are SDK add-ons, which typically provide application access to one or more external libraries and/or a customized (but compliant) system image that can run in the emulator.

A new tool called "android" lets you discover what targets and AVDs are available to use.

For more information about AVDs, see Android Virtual Devices

Other Notes

Maps External Library

In previous versions of the SDK, the com.google.android.maps package was included in the standard Android library and system image. In the Android 1.5 SDK, that is not the case. The Android 1.5 library and system image do not include the Maps external library (com.google.android.maps). However, the Maps external library is available as part of the Google APIs add-on for the Android SDK, downloadable from this location:

http://code.google.com /android/add-ons/google-apis

For your convenience, the Google APIs add-on is included in the SDK.

For information about how to register for a Maps API Key, see Obtaining a Maps API Key.

USB Drivers for Windows

If you are using Windows and want to develop or test your application on an Android-powered device (such as the T-Mobile G1), you need an appropriate USB driver. For your convenience, the Windows version of the Android SDK includes these USB drivers that you can install, to let you develop on the device:

  • USB driver for 32-bit XP and Vista
  • USB driver for 64-bit Vista only

The USB driver files are located in the <SDK>/usb_driver directory. For details and installation instructions, see Setting Up a Device for Development.

Resolved Issues, Changes

Media

Known Issues

Sensor problems in Emulator

  • If your application uses the Sensor API and you are running it in the emulator on the Android 1.5 system image, you may experience problems. Your application may generate ANR messages or crash when using the sensors. The problem is being investigated.

Other

  • We regret to inform developers that Android 1.5 will not include support for the Zilog Z80 processor architecture.

Android 1.1 SDK, Release 1

This SDK provides the development tools and Android system image you need to create applications for Android-powered devices. Applications developed on this SDK will be compatible with mobile devices running the Android 1.1 platform.

This release provides an updated system image (Android 1.1), updated documentation, and the same set of development tools provided in the Android 1.0 r2 SDK. The updated system image includes bug fixes and some smaller features, as well as a few minor API changes from the 1.0 version.

For details about the Android 1.1 system image included in the SDK — including bug fixes, features, and API changes — please read the Android 1.1 Version Notes.

App Versioning for Android 1.1

If you are using this SDK to build an application that is compatible only with Android-powered devices running the Android 1.1 platform, please note that you must set the the android:minSdkVersion attribute in the application's manifest to the API Level of Android 1.1 — "2".

Specifically, you specify the android:minSdkVersion attribute in a <uses-sdk> element as a child of <manifest> in the manifest file. When set, the attribute looks like this:

<manifest>
  ...
  <uses-sdk android:minSdkVersion="2" />
  ...
</manifest>

By setting android:minSdkVersion in this way, you ensure that users will only be able to install your application if their devices are running the Android 1.1 platform. In turn, this ensures that your application will function properly on their devices, especially if it uses APIs introduced in Android 1.1.

If your application uses APIs introduced in Android 1.1 but does not declare <uses-sdk android:minSdkVersion="2" />, then it will run properly on Android 1.1 devices but not on Android 1.0 devices.

If your application does not use any new APIs introduced in Android 1.1, you can indicate Android 1.0 compatibility by removing android:minSdkVersion or setting the attribute to "1". However, before publishing your application, you must make sure to compile your application against the Android 1.0 system image (available in the Android 1.0 SDK), to ensure that it builds and functions properly for Android 1.0 devices. You should test the application against system images corresponding to the API Levels that the application is designed to be compatible with.

If you are sure your application is not using Android 1.1 APIs and has no need to use them, you might find it easier to keep working in the Android 1.0 SDK, rather than migrating to the Android 1.1 SDK and having to do additional testing.

ADT Plugin Compatibility

For this version of the SDK — Android 1.1 SDK, Release 1 — the compatible version of the Android Development Tools (ADT) Plugin for Eclipse is 0.8.0. If you are using a previous version of ADT, you should update to the latest version for use with this SDK. For information about how to update your ADT plugin, see Upgrading the SDK.

Installation and Upgrade Notes

If you've been developing an application using an Android 1.0 SDK no changes to your application are needed. You may want to wipe application user data (emulator option -wipe-data) when running your application on the Android 1.1 emulator for the first time.

If you're installing the Android SDK for the first time, please see the instructions in Installing the SDK.

Other Notes

MapView API Key

com.google.android.maps.MapView is a class that lets you easily integrate Google Maps into your application. Before you can access the maps data, you will need to register with the Google Maps service and receive a Maps API Key, which you then add to your MapView for authentication to the server.

Developers should note that the registration service for MapView is now active and Google Maps is actively enforcing the Maps API Key requirement. For information about how to register for a Maps API Key, see Obtaining a Maps API Key.

USB Drivers for Windows

If you using Windows and want to develop or test your application on an Android-powered device (such as the T-Mobile G1), you need an appropriate USB driver. For your convenience, the Windows version of the Android SDK includes these USB drivers that you can install, to let you develop on the device:

  • USB driver for 32-bit XP and Vista
  • USB driver for 64-bit Vista only

The USB driver files are located in the <SDK>/usb_driver directory. For details and installation instructions, see Setting Up a Device for Development.

Resolved Issues, Changes

Emulator

  • Emulator now saves the user image in <android>/SDK1.1/

Known Issues

JUnit and Eclipse/ADT

  • If you are developing in Eclipse/ADT and want to add JUnit test classes, you can do so. However, you need to set up a custom JUnit configuration before your tests will run properly. For detailed information about how to set up the JUnit configuration, see the troubleshooting topic Running a Junit test class in Eclipse.

Other

  • It is not possible to send MMS messages between emulator instances.
  • In some cases, you may encounter problems when using the browser on an emulator started with the command-line option -http-proxy.
  • On the OSX platform, if you manually remove the ~/.android directory using rm -rf ~/.android, then try to run the emulator, it crashes. This happens because the emulator fails to create a new .android directory before attempting to create the child SDK1.0 directory. To work around this issue, manually create a new .android directory using mkdir ~/.android, then run the emulator. The emulator creates the SDK1.0 directory and starts normally.
  • We regret to inform developers that Android 1.1 will not include support for ARCNet network interfaces.
  • The final set of Intent patterns honored by Android 1.0 has not yet been fully documented. Documentation will be provided in future releases.
  • In ADT Editor, you can add at most ten new resource values at a time, in a given res/values/*.xml, using the form in the Android Resources pane. If you add more than ten, the Android Resources pane will not display the attributes fields for the additional resource entries. To work around this problem, you can close the file in the editor and open it again, or you can edit the resource entries in the XML text mode.
  • The emulator's battery-control commands (power <option>) are not working in this release.

Android 1.0 SDK, Release 2

This SDK release includes the Android 1.0 platform and application API. Applications developed on this SDK will be compatible with mobile devices running the Android 1.0 platform.

This release includes mainly bug fixes, although some smaller features were added.

ADT Plugin Compatibility

For this release of the SDK, the compatible version of the Android Development Tools (ADT) Plugin for Eclipse is 0.8.0. If you are using a previous version of ADT, you should update to the latest version for use with this SDK. For information about how to update your ADT plugin, see Upgrading the SDK.

Installation and Upgrade Notes

If you're installing the Android SDK for the first time, please see the instructions in Installing the SDK.

Other Notes

T-Mobile G1 Compatability

This version of the SDK has been tested for compatability with the first Android-powered mobile device, the T-Mobile G1.

MapView API Key

MapView is a class that lets you easily integrate Google Maps into your application. Before you can access the maps data, you will need to register with the Google Maps service and receive a Maps API Key, which you then add to your MapView for authentication to the server.

Developers should note that the registration service for MapView is now active and Google Maps is actively enforcing the Maps API Key requirement. For information about how to register for a Maps API Key, see http://code.google.com/android/add-ons/google-apis/mapkey.html.

USB Driver for Windows

If you using Windows and want to develop or test your application on an Android-powered device (such as the T-Mobile G1), you need an appropriate USB driver. For your convenience, the Windows version of the Android SDK includes a USB driver that you can install, to let you develop on the device. The USB driver files are located in the <SDK>/usb_driver directory.

Resolved Issues, Changes

  • The android.jar in this SDK release now includes several classes that were missing from the previous SDK.
  • The android.R.styleable class and its fields were removed from the public API, to better ensure forward-compatibility for applications. The constants declared in android.R.styleable were platform-specific and subject to arbitrary change across versions, so were not suitable for use by applications. You can still access the platform's styleable attributes from your resources or code. To do so, declare a custom resource element using a <declare-styleable> in your project's res/values/R.attrs file, then declare the attribute inside. For examples, see <sdk>/samples/ApiDemos/res/values/attrs.xml. For more information about custom resources, see Custom Layout Resources. Note that the android.R.styleable documentation is still provided in the SDK, but only as a reference of the platform's styleable attributes for the various elements.
  • The VM now properly ensures that private classes are not available to applications through reflection. If you were using reflection to access private classes in a previous release, you will now get a run-time error.
  • The Settings and Email applications are now included in the SDK and available in the emulator.
  • We regret to inform developers that SDK 1.0_r2 does not support MFM, RLL, or Winchester hard disk drives.
  • In the emulator, the control key for enabling/disabling trackball mode is changed from Control-T to F6. You can also enter trackball mode temporarily using the Delete key. While the key is pressed, you can send trackball events.

Unless otherwise noted, Known Issues from the previous SDK release also apply to this release.

Android 1.0 SDK, Release 1

This SDK release is the first to include the Android 1.0 platform and application API. Applications developed on this SDK will be compatible with mobile devices running the Android 1.0 platform, when such devices are available.

This release includes mainly bug fixes, although some smaller features were added. The Android 1.0 also includes several API changes from the 0.9 version. For those porting from the M5 release, the SDK also includes the legacy changes overview and API Differences Reports. See the current Overview of Changes for more information.

ADT Plugin Compatibility

For this version of the SDK — Android 1.0 SDK, Release 1 — the compatible version of the Android Development Tools (ADT) Plugin for Eclipse is 0.8.0. If you are using a previous version of ADT, you should update to the latest version for use with this SDK. For information about how to update your ADT plugin, see Upgrading the SDK.

Installation and Upgrade Notes

If you've been developing an application using a previous SDK version and you want the application to run on Android-powered mobile devices, you must port the application to the Android 1.0 SDK. Please see Upgrading the SDK for detailed instructions on how to make the transition to this release. Be sure to wipe application user data (emulator option -wipe-data) when running your application on the Android 1.0 SDK emulator.

If you're installing the Android SDK for the first time, please see the instructions in Installing the SDK.

Other Notes

MapView API Key

MapView is a class that lets you easily integrate Google Maps into your application. Before you can access the maps data, you will need to register with the Google Maps service and receive a Maps API Key, which you then add to your MapView for authentication to the server.

Currently, the registration service for MapView is not yet active and Google Maps is not yet enforcing the Maps API Key requirement. However, note that the registration service will be activated soon, so that MapViews in any application deployed to a mobile device will require registration and a valid Maps API Key.

As soon as the registration service becomes available, we will update the page at http://code.google.com/android/add-ons/google-apis/mapkey.html with details about how and where to register. Please check that page periodically for registration information, if you are using a MapView.

Resolved Issues, Changes

Emulator

  • Emulator now saves the user image in <android>/SDK1.0/
  • Fixed EsounD-related freezes on Linux.
  • Fixed the documentation in -help-audio. '-audio list' doesn't work, one needs to call -help-audio-out and -help-audio-in to get the list of valid audio backends.
  • Fixed scrollwheel Dpad emulation in rotated mode. before that, using the scroll-wheel would always generated Dpad Up/Down events, even when in landscape mode.
  • Several Obsolete command options were removed.
  • Setting the network speed through the console or the -netspeed option will properly modify the connectivity icon on the device.
  • Setting the GSM voice registration state to 'roaming' in the console will properly modify the voice icon on the device

SQLite

  • SQLite is now included in the SDK package on all platforms.

Other

  • It is not possible to send MMS messages between emulator instances.
  • In some cases, you may encounter problems when using the browser on an emulator started with the command-line option -http-proxy.
  • We regret to inform developers that Android 1.0 will not include support for dot-matrix printers.
  • On the OSX platform, if you manually remove the ~/.android directory using rm -rf ~/.android, then try to run the emulator, it crashes. This happens because the emulator fails to create a new .android directory before attempting to create the child SDK1.0 directory. To work around this issue, manually create a new .android directory using mkdir ~/.android, then run the emulator. The emulator creates the SDK1.0 directory and starts normally.
  • The final set of Intent patterns honored by Android 1.0 has not yet been fully documented. Documentation will be provided in future releases.
  • In ADT Editor, you can add at most ten new resource values at a time, in a given res/values/*.xml, using the form in the Android Resources pane. If you add more than ten, the Android Resources pane will not display the attributes fields for the additional resource entries. To work around this problem, you can close the file in the editor and open it again, or you can edit the resource entries in the XML text mode.
  • The emulator's battery-control commands (power <option>) are not working in this release.
↑ Go to top