Upgrading the SDK
This guide will help you migrate your development environment and applications to the Android 0.9 SDK beta. Use this guide if you’ve been developing for Android on any of the m3 or m5 versions of the SDK.
The Andoid 0.9 SDK beta includes:
- Extensions, changes and improvements to the framework and library APIs
- New developer tools
- Enhancements to existing developer tools
- Redesigns to the home screen, some applications and UI
- Plus various other improvements throughout the system
To take advantage of these features, you need to install the new SDK and upgrade your existing Android applications. The sections below guide you through the process.
Install the new SDK
Download the SDK and unpack it into a safe location.
After unpacking the new SDK, you should:
- Wipe your emulator data.Some data formats have changed since the last SDK release, so any previously saved data in your emulator must be removed. Open a console/terminal and navigate to the
/toolsdirectory of your SDK. Launch the emulator with the
- Update your PATH variable (Mac/Linux; optional).If you had previously setup your PATH variable to point to the SDK tools directory, then you’ll need to update it to point to the new SDK. E.g., for a
Update your ADT Eclipse Plugin
If you develop on Eclipse and are using the ADT plugin, follow these steps to install the new plugin that accompanies the latest SDK.
|Eclipse 3.3 (Europa)||Eclipse 3.4 (Ganymede)|
After restart, update your Eclipse preferences to point to the SDK directory:
- Select Window > Preferences… to open the Preferences panel. (Mac OSX: Eclipse > Preferences)
- Select Android from the left panel.
- For the SDK Location in the main panel, click Browse… and locate the SDK directory.
- Click Apply, then OK.
Set Up Application Signing
All applications must now be signed before you can install them on the emulator. Both the ADT plugin and the Ant-based build tools support this requirement by signing compiled .apk files with a debug key. To do so, the build tools use the Keytool utility included in the JDK to to create a keystore and a key with a known alias and password.
To support signing, you should first make sure that Keytool is available to the SDK build tools. In most cases, you can tell the SDK build tools how to find Keytool by making sure that your JAVA_HOME environment variable is set and that it references a suitable JDK. Alternatively, you can add the JDK version of Keytool to your PATH variable.
If you are developing on a version of Linux that originally came with Gnu Compiler for Java, make sure that the system is using the JDK version of Keytool, rather than the gcj version. If keytool is already in your PATH, it might be pointing to a symlink at /usr/bin/keytool. In this case, check the symlink target to make sure that it points to the keytool in the JDK.
If you use Ant to build your .apk files (rather than ADT for Eclipse), you must regenerate your build.xml file. To do that, follow these steps:
- In your Android application project directory, locate and delete the current build.xml file.
- Run activitycreator, directing output to the folder containing your application project.
- exec activitycreator --out <project folder> your.activity.YourActivity
Run in this way, activityCreator will not erase or create new Java files (or manifest files), provided the activity and package already exists. It is important that the package and the activity are real. The tool creates a new build.xml file, as well as a new directory called “libs” in which to place 3rd jar files, which are now automatically handled by the Ant script.
Migrate your applications
After updating your SDK, you will likely encounter breakages in your code, due to framework and API changes. You’ll need to update your code to match changes in the Andriod APIs.
One way to start is to open your project in Eclipse and see where the ADT identifies errors in your application. From there, you can lookup respective changes in the Overview of Changes and API Diffs Report.
If you have modified one of the ApiDemos applications and would like to migrate it to the new SDK, note that you will need to uninstall the version of ApiDemos that comes preinstalled in the emulator.