diff options
author | Scott Main <smain@google.com> | 2012-06-21 02:55:55 -0700 |
---|---|---|
committer | Scott Main <smain@google.com> | 2012-06-21 02:55:55 -0700 |
commit | 0f0fd11a45fb96e7207f9ea0fdb766b8d526ac59 (patch) | |
tree | 85c646ddd0ec07231b39ab554e42759f8bb6b33e | |
parent | 46b239d5da08358e91f4b05b2a32e2e2a13427ae (diff) | |
download | base-0f0fd11a45fb96e7207f9ea0fdb766b8d526ac59.tar.gz |
docs: re-add old sdk pages for prosperity
Change-Id: I76acc94eba682b9d4ef7d5edeb11c8c3e8d6bc6d
28 files changed, 2177 insertions, 0 deletions
diff --git a/docs/html/sdk/1.0_r1/index.jd b/docs/html/sdk/1.0_r1/index.jd new file mode 100644 index 000000000000..b38048331191 --- /dev/null +++ b/docs/html/sdk/1.0_r1/index.jd @@ -0,0 +1,5 @@ +page.title=Android 1.0 SDK, release 1 +sdk.redirect=true +sdk.redirect.path=index.html + +@jd:body diff --git a/docs/html/sdk/1.0_r1/installing.jd b/docs/html/sdk/1.0_r1/installing.jd new file mode 100644 index 000000000000..2ea04e468754 --- /dev/null +++ b/docs/html/sdk/1.0_r1/installing.jd @@ -0,0 +1,8 @@ +@jd:body + +<script type="text/javascript"> + document.location=toRoot+"sdk/installing.html" +</script> + +<p>You should have already been redirected by your browser. Please go to +<a href="{@docRoot}sdk/installing.html">Installing the Android SDK</a>.</p>
\ No newline at end of file diff --git a/docs/html/sdk/1.0_r1/requirements.jd b/docs/html/sdk/1.0_r1/requirements.jd new file mode 100644 index 000000000000..96fdcb26f6fa --- /dev/null +++ b/docs/html/sdk/1.0_r1/requirements.jd @@ -0,0 +1,8 @@ +@jd:body + +<script type="text/javascript"> + document.location=toRoot+"sdk/requirements.html" +</script> + +<p>You should have already been redirected by your browser. Please go to +<a href="{@docRoot}sdk/requirements.html">System Requirements</a>.</p>
\ No newline at end of file diff --git a/docs/html/sdk/1.0_r1/upgrading.jd b/docs/html/sdk/1.0_r1/upgrading.jd new file mode 100644 index 000000000000..d6d5dc486c59 --- /dev/null +++ b/docs/html/sdk/1.0_r1/upgrading.jd @@ -0,0 +1,154 @@ +page.title=Upgrading the SDK +sdk.version=1.0_r1 +@jd:body + +<p>For the current SDK release, see the links under <strong>Current SDK Release</strong> in the side navigation.</p> + +<p>This guide will help you migrate your development environment and applications +to <strong>version 1.0, release 1</strong>, of the Android SDK. Use this guide if you've been developing applications +on a different version of the Android SDK.</p> + +<p>To ensure that your applications are compliant with the Android 1.0 system available +on mobile devices, you need to install the new SDK and port your existing Android +applications to the updated API. The sections below guide you through the process.</p> + +<h2 id="install-new">Install the new SDK</h2> + +<p>After unpacking the SDK, you should:</p> + +<ul> + <li>Wipe your emulator data. <p>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 <code>/tools</code> directory of your SDK. Launch the + emulator with the <code>-wipe-data</code> option. </p> + <p>Windows: <code>emulator -wipe-data</code><br/> + Mac/Linux: <code>./emulator -wipe-data</code></p> + </li> + <li>Update your PATH variable (Mac/Linux; optional). <p>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 <code>.bashrc</code> or <code>.bash_profile</code> file: + <code>export PATH=$PATH:<em><your_new_sdk_dir></em>/tools</code></p> + </li> +</ul> + +<h2 id="update-plugin">Update your ADT Eclipse Plugin</h2> + +<p>If you develop on Eclipse and are using the ADT plugin, follow these steps to install the +plugin that's required for this version of the SDK.</p> + +<table style="font-size:100%"> +<tr><th>Eclipse 3.3 (Europa)</th><th>Eclipse 3.4 (Ganymede)</th></tr> +<tr> +<td width="45%"> +<ol> + <li><a href="http://dl-ssl.google.com/android/ADT-0.8.0.zip">Download the ADT v0.8.0 zip + file</a> (do not unpack it).</li> + <li>Start Eclipse, then select <strong>Help</strong> > <strong>Software Updates</strong> > <strong>Find + and Install...</strong>. </li> + <li>In the dialog that appears, select <strong>Search for new features to install</strong> and click + <strong>Next</strong>. </li> + <li>Click <strong>New Archive Site...</strong></li> + <li>Browse and select the downloaded the zip file.</li> + <li>You should now see the new site added to the search list (and checked). + Click <strong>Finish</strong>. </li> + <li>In the subsequent Search Results dialog box, select the checkbox for + <strong>Android Plugin</strong> > <strong>Developer Tools</strong>. + This will check both features: "Android Developer Tools", and "Android + Editors". The Android Editors feature is optional, but recommended. If + you choose to install it, you need the WST plugin mentioned earlier in this + page. Click <strong>Next</strong>. </li> + <li>Read the license agreement and then select <strong>Accept terms of the license agreement</strong>. + Click <strong>Next</strong>. </li> + <li>Click <strong>Finish</strong>. </li> + <li>The ADT plugin is not signed; you can accept the installation anyway + by clicking <strong>Install All</strong>. </li> + <li>Restart Eclipse. </li> +</ol> + +</td> +<td> + +<ol> + <li><a href="http://dl-ssl.google.com/android/ADT-0.8.0.zip">Download the ADT v0.8.0 zip + file</a> (do not unpack it).</li> + <li>Start Eclipse, then select <strong>Help</strong> > <strong>Software Updates...</strong>.</li> + <li>In the dialog that appears, click the <strong>Available Software</strong> tab.</li> + <li>Click <strong>Add Site...</strong>, then <strong>Archive...</strong>.</li> + <li>Browse and select the downloaded the zip file.</li> + <li>Back in the Available Software view, you should see the plugin. Select the checkbox next to + <em>Developer Tools</em> and click <strong>Install...</strong></li> + <li>On the subsequent Install window, "Android Developer Tools", and "Android Editors" should both be checked. + The Android Editors feature is optional, but recommended. If + you choose to install it, you need the WST plugin mentioned earlier in this + page. Click <strong>Next</strong>.</li> + <li>Accept the license agreement and click <strong>Finish</strong>.</li> + <li>Restart Eclipse. </li> +</ol> + +</td> +</tr> +</table> + +<p>After restart, update your Eclipse preferences to point to the SDK directory:</p> + <ol> + <li>Select <strong>Window</strong> > <strong>Preferences...</strong> to open the Preferences panel. (Mac OSX: <strong>Eclipse</strong> > <strong>Preferences</strong>)</li> + <li>Select <strong>Android</strong> from the left panel.</li> + <li>For the SDK Location in the main panel, click <strong>Browse...</strong> and locate the SDK directory.</li> + <li>Click <strong>Apply</strong>, then <strong>OK</strong>.</li> + </ol> + +<h2 id="sign">Set Up Application Signing</h2> + +<p>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. For more +information, see "Signing and Publishing Your App" in the documentation included with the SDK. + +<p>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.</p> + +<p>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.</p> + +<p>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:</p> +<ol> + <li>In your Android application project directory, locate and delete the current build.xml file.</li> + <li>Run activitycreator, directing output to the folder containing your application project. + +<pre>- exec activitycreator --out <project folder> your.activity.YourActivity</pre> + + </li> +</ol> + +<p>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.</p> + +<h2 id="migrate">Migrate your applications</h2> + +<p>If (and only if) you have written apps in an SDK released previous to +the Android 1.0 SDK, you will need to migrate your applications. After +updating your SDK, you may encounter breakages in your code, due to +framework and API changes. You'll need to update your code to match +changes in the Android APIs.</p> + +<p>One way to start is to open your project in Eclipse and see where the ADT +identifies errors in your application. You can also look up +specific changes in the Android APIs in the <em>Overview of Changes</em> and <em> +API Diffs Report</em>, both available in the documentation included with the +Android 1.0 SDK package.</p> + +<p>If you have additional trouble updating your code, visit the +<a href="http://groups.google.com/group/android-developers">Android Developers Group</a> +to seek help from other Android developers.</p> + +<p>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.</p> diff --git a/docs/html/sdk/1.0_r2/index.jd b/docs/html/sdk/1.0_r2/index.jd new file mode 100644 index 000000000000..c29c148a4861 --- /dev/null +++ b/docs/html/sdk/1.0_r2/index.jd @@ -0,0 +1,5 @@ +page.title=Android 1.0 SDK, release 2 +sdk.redirect=true +sdk.redirect.path=index.html + +@jd:body diff --git a/docs/html/sdk/1.0_r2/installing.jd b/docs/html/sdk/1.0_r2/installing.jd new file mode 100644 index 000000000000..2ea04e468754 --- /dev/null +++ b/docs/html/sdk/1.0_r2/installing.jd @@ -0,0 +1,8 @@ +@jd:body + +<script type="text/javascript"> + document.location=toRoot+"sdk/installing.html" +</script> + +<p>You should have already been redirected by your browser. Please go to +<a href="{@docRoot}sdk/installing.html">Installing the Android SDK</a>.</p>
\ No newline at end of file diff --git a/docs/html/sdk/1.0_r2/requirements.jd b/docs/html/sdk/1.0_r2/requirements.jd new file mode 100644 index 000000000000..96fdcb26f6fa --- /dev/null +++ b/docs/html/sdk/1.0_r2/requirements.jd @@ -0,0 +1,8 @@ +@jd:body + +<script type="text/javascript"> + document.location=toRoot+"sdk/requirements.html" +</script> + +<p>You should have already been redirected by your browser. Please go to +<a href="{@docRoot}sdk/requirements.html">System Requirements</a>.</p>
\ No newline at end of file diff --git a/docs/html/sdk/1.0_r2/upgrading.jd b/docs/html/sdk/1.0_r2/upgrading.jd new file mode 100644 index 000000000000..409e30e8c195 --- /dev/null +++ b/docs/html/sdk/1.0_r2/upgrading.jd @@ -0,0 +1,154 @@ +page.title=Upgrading the SDK +sdk.version=1.0_r2 +@jd:body + +<p>For the current SDK release, see the links under <strong>Current SDK Release</strong> in the side navigation.</p> + +<p>This guide will help you migrate your development environment and applications +to <strong>version 1.0, release 2</strong>, of the Android SDK. Use this guide if you've been developing applications +on a different version of the Android SDK.</p> + +<p>To ensure that your applications are compliant with the Android 1.0 system available +on mobile devices, you need to install the new SDK and port your existing Android +applications to the updated API. The sections below guide you through the process.</p> + +<h2 id="install-new">Install the new SDK</h2> + +<p>After unpacking the SDK, you should:</p> + +<ul> + <li>Wipe your emulator data. <p>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 <code>/tools</code> directory of your SDK. Launch the + emulator with the <code>-wipe-data</code> option. </p> + <p>Windows: <code>emulator -wipe-data</code><br/> + Mac/Linux: <code>./emulator -wipe-data</code></p> + </li> + <li>Update your PATH variable (Mac/Linux; optional). <p>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 <code>.bashrc</code> or <code>.bash_profile</code> file: + <code>export PATH=$PATH:<em><your_new_sdk_dir></em>/tools</code></p> + </li> +</ul> + +<h2 id="update-plugin">Update your ADT Eclipse Plugin</h2> + +<p>If you develop on Eclipse and are using the ADT plugin, follow these steps to install the +plugin that's required for this version of the SDK.</p> + +<table style="font-size:100%"> +<tr><th>Eclipse 3.3 (Europa)</th><th>Eclipse 3.4 (Ganymede)</th></tr> +<tr> +<td width="45%"> +<ol> + <li><a href="http://dl-ssl.google.com/android/ADT-0.8.0.zip">Download the ADT v0.8.0 zip + file</a> (do not unpack it).</li> + <li>Start Eclipse, then select <strong>Help</strong> > <strong>Software Updates</strong> > <strong>Find + and Install...</strong>. </li> + <li>In the dialog that appears, select <strong>Search for new features to install</strong> and click + <strong>Next</strong>. </li> + <li>Click <strong>New Archive Site...</strong></li> + <li>Browse and select the downloaded the zip file.</li> + <li>You should now see the new site added to the search list (and checked). + Click <strong>Finish</strong>. </li> + <li>In the subsequent Search Results dialog box, select the checkbox for + <strong>Android Plugin</strong> > <strong>Developer Tools</strong>. + This will check both features: "Android Developer Tools", and "Android + Editors". The Android Editors feature is optional, but recommended. If + you choose to install it, you need the WST plugin mentioned earlier in this + page. Click <strong>Next</strong>. </li> + <li>Read the license agreement and then select <strong>Accept terms of the license agreement</strong>. + Click <strong>Next</strong>. </li> + <li>Click <strong>Finish</strong>. </li> + <li>The ADT plugin is not signed; you can accept the installation anyway + by clicking <strong>Install All</strong>. </li> + <li>Restart Eclipse. </li> +</ol> + +</td> +<td> + +<ol> + <li><a href="http://dl-ssl.google.com/android/ADT-0.8.0.zip">Download the ADT v0.8.0 zip + file</a> (do not unpack it).</li> + <li>Start Eclipse, then select <strong>Help</strong> > <strong>Software Updates...</strong>.</li> + <li>In the dialog that appears, click the <strong>Available Software</strong> tab.</li> + <li>Click <strong>Add Site...</strong>, then <strong>Archive...</strong>.</li> + <li>Browse and select the downloaded the zip file.</li> + <li>Back in the Available Software view, you should see the plugin. Select the checkbox next to + <em>Developer Tools</em> and click <strong>Install...</strong></li> + <li>On the subsequent Install window, "Android Developer Tools", and "Android Editors" should both be checked. + The Android Editors feature is optional, but recommended. If + you choose to install it, you need the WST plugin mentioned earlier in this + page. Click <strong>Next</strong>.</li> + <li>Accept the license agreement and click <strong>Finish</strong>.</li> + <li>Restart Eclipse. </li> +</ol> + +</td> +</tr> +</table> + +<p>After restart, update your Eclipse preferences to point to the SDK directory:</p> + <ol> + <li>Select <strong>Window</strong> > <strong>Preferences...</strong> to open the Preferences panel. (Mac OSX: <strong>Eclipse</strong> > <strong>Preferences</strong>)</li> + <li>Select <strong>Android</strong> from the left panel.</li> + <li>For the SDK Location in the main panel, click <strong>Browse...</strong> and locate the SDK directory.</li> + <li>Click <strong>Apply</strong>, then <strong>OK</strong>.</li> + </ol> + +<h2 id="sign">Set Up Application Signing</h2> + +<p>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. For more +information, see "Signing and Publishing Your App" in the documentation included with the SDK. + +<p>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.</p> + +<p>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.</p> + +<p>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:</p> +<ol> + <li>In your Android application project directory, locate and delete the current build.xml file.</li> + <li>Run activitycreator, directing output to the folder containing your application project. + +<pre>- exec activitycreator --out <project folder> your.activity.YourActivity</pre> + + </li> +</ol> + +<p>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.</p> + +<h2 id="migrate">Migrate your applications</h2> + +<p>If (and only if) you have written apps in an SDK released previous to +the Android 1.0 SDK, you will need to migrate your applications. After +updating your SDK, you may encounter breakages in your code, due to +framework and API changes. You'll need to update your code to match +changes in the Android APIs.</p> + +<p>One way to start is to open your project in Eclipse and see where the ADT +identifies errors in your application. You can also look up +specific changes in the Android APIs in the <em>Overview of Changes</em> and <em> +API Diffs Report</em>, both available in the documentation included with the +Android 1.0 SDK package.</p> + +<p>If you have additional trouble updating your code, visit the +<a href="http://groups.google.com/group/android-developers">Android Developers Group</a> +to seek help from other Android developers.</p> + +<p>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.</p> diff --git a/docs/html/sdk/1.1_r1/index.jd b/docs/html/sdk/1.1_r1/index.jd new file mode 100644 index 000000000000..63fe51d759a7 --- /dev/null +++ b/docs/html/sdk/1.1_r1/index.jd @@ -0,0 +1,5 @@ +page.title=Android 1.1 SDK, Release 1 +sdk.redirect=true +sdk.redirect.path=index.html + +@jd:body diff --git a/docs/html/sdk/1.1_r1/installing.jd b/docs/html/sdk/1.1_r1/installing.jd new file mode 100644 index 000000000000..2ea04e468754 --- /dev/null +++ b/docs/html/sdk/1.1_r1/installing.jd @@ -0,0 +1,8 @@ +@jd:body + +<script type="text/javascript"> + document.location=toRoot+"sdk/installing.html" +</script> + +<p>You should have already been redirected by your browser. Please go to +<a href="{@docRoot}sdk/installing.html">Installing the Android SDK</a>.</p>
\ No newline at end of file diff --git a/docs/html/sdk/1.1_r1/requirements.jd b/docs/html/sdk/1.1_r1/requirements.jd new file mode 100644 index 000000000000..96fdcb26f6fa --- /dev/null +++ b/docs/html/sdk/1.1_r1/requirements.jd @@ -0,0 +1,8 @@ +@jd:body + +<script type="text/javascript"> + document.location=toRoot+"sdk/requirements.html" +</script> + +<p>You should have already been redirected by your browser. Please go to +<a href="{@docRoot}sdk/requirements.html">System Requirements</a>.</p>
\ No newline at end of file diff --git a/docs/html/sdk/1.1_r1/upgrading.jd b/docs/html/sdk/1.1_r1/upgrading.jd new file mode 100644 index 000000000000..bc71149fb356 --- /dev/null +++ b/docs/html/sdk/1.1_r1/upgrading.jd @@ -0,0 +1,150 @@ +page.title=Upgrading the SDK +sdk.version=1.1_r1 +@jd:body + +<!-- +<div class="sidebox-wrapper"> +<div class="sidebox"> + + <h2>Useful Links</h2> + + <ul class="noindent"> + <li><a href="migrating/0.9-1.0/changes-overview.html">Overview of Changes</a> + <p>A high-level look at what's changed in Android, with + discussion of how the changes may affect your apps.</p></li> + + <li><a href="migrating/0.9-1.0/changes.html">API Diff Report</a> + <p>A detailed report that lists all the specific changes in the latest SDK.</p></li> + + <li><a href="RELEASENOTES.html">Release Notes</a> + <p>Version details, known issues, and resolved issues. </p></li> + + <li><a href="http://groups.google.com/group/android-developers">Android Developers Group</a> + <p>A forum where you can discuss migration issues and learn from other Android developers. </p></li> + + <li><a href="http://code.google.com/p/android/issues/list">Android Issue Tracker</a> + <p>If you think you may have found a bug, use the issue tracker to report it.</p></li> + </ul> + + </div> +</div> +--> + +<p>This document describes how to move your development environment and existing +Android applications from an Android 1.0 SDK to the Android 1.1, Release 1 SDK. +If you are migrating applications from an earlier SDK, please read the upgrading +document available in the Android 1.0 SDK package. +</p> + +<p>To ensure that your applications are compliant with the Android 1.1 system available +on mobile devices, you need to install the Android 1.1 SDK and port your existing Android +applications to it. The sections below will guide you through the process.</p> + +<h2 id="install-new">Installing the Latest SDK</h2> + +<p><a href="{@docRoot}sdk/1.1_r1/index.html">Download the SDK</a> and unpack it into a safe location.</p> + +<p>After unpacking the new SDK and saving it an appropriate location, you should:</p> + +<ul> + <li>Wipe your emulator data. <p>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 <code>/tools</code> directory of your new SDK. Launch the + emulator with the <code>-wipe-data</code> option. + <p>Windows: <code>emulator -wipe-data</code><br/> + Mac/Linux: <code>./emulator -wipe-data</code></p> + </li> + <li>Update your PATH variable (Mac/Linux; optional). <p>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. For example, for a <code>.bashrc</code> or <code>.bash_profile</code> file: + <code>export PATH=$PATH:<em><your_new_sdk_dir></em>/tools</code></p> + </li> + <li>If (and only if) you are developing using Ant, you will also need to modify + your build.xml properties to point to the new SDK. + <p>Open the <code>default.properties</code> file associated with your build.xml + file (typically located in the same directory). In the default.properties + file, update the <code>sdk-folder</code> property with the full path to + the new SDK directory.</p></li> +</ul> + +<a name="Updating_the_ADT_plugin" id="Updating_the_ADT_plugin"></a> +<h2 id="update-plugin">Update your ADT Eclipse Plugin</h2> + +<p>If you develop on Eclipse and are migrating from an Android 1.0 +SDK, no update of the ADT plugin is needed — skip to <a href="#updateEclipsePrefs">Update your Eclipse SDK Preferences</a>. </p> + +<p>If you are migrating from an earlier version of the SDK, you will +need to update the ADT plugin. <p>You may also want to upgrade your +ADT plugin when a new version becomes available for your existing version +of the SDK.</p> + +<p>The steps below describe how to update the ADT plugin to the latest +version available. </p> + +<table style="font-size:100%"> +<tr><th>Eclipse 3.3 (Europa)</th><th>Eclipse 3.4 (Ganymede)</th></tr> +<tr> +<td width="50%"> +<ol> + <li> Select <strong>Help</strong> > <strong>Software Updates</strong> > <strong>Find and Install...</strong>. </li> + <li> Select <strong>Search for updates of the currently installed features</strong> and click <strong>Finish</strong>. </li> + <li> If any update for ADT is available, select and install. </li> + <li> Restart Eclipse.</li> +</ol> +<p> Alternatively, </p> +<ol> + <li> Select <strong>Help</strong> > <strong>Software Updates</strong> > <strong>Manage Configuration</strong>. </li> + + <li> Navigate down the tree and select <strong>Android Development Tools <version></strong> </li> + <li> Select <strong>Scan for Updates</strong> under <strong>Available Tasks</strong>.</li> +</ol> +</td> +<td> +<ol> + <li>Select <strong>Help</strong> > <strong>Software Updates...</strong></li> + <li>Select the <strong>Installed Software</strong> tab.</li> + <li>Click <strong>Update...</strong></li> + <li>If an update for ADT is available, select it and click <strong>Finish</strong>.</li> + <li>Restart Eclipse.</li> +</ol> +</td> +</tr> +</table> + +<h2 id="updateEclipsePrefs">Update your Eclipse SDK Preferences</h2> + +<p>The last step is to update your Eclipse preferences to point to the new SDK directory:</p> + <ol> + <li>Select <strong>Window</strong> > <strong>Preferences...</strong> to open the Preferences panel. (Mac OSX: <strong>Eclipse</strong> > <strong>Preferences</strong>)</li> + <li>Select <strong>Android</strong> from the left panel.</li> + <li>For the SDK Location in the main panel, click <strong>Browse...</strong> and locate the SDK directory.</li> + <li>Click <strong>Apply</strong>, then <strong>OK</strong>.</li> + </ol> + +<h2 id="migrate">Migrate Your Applications, if Necessary</h2> + +<p>If (and only if) you have written apps in an SDK released previous to +the Android 1.0 SDK, you will need to migrate your applications. After +installing the new SDK and updating the ADT Plugin (if applicable), you +may encounter breakages in your application code, due to +framework and API changes. You'll need to update your code to match the +latest APIs.</p> + +<p>One way to start is to open your project in Eclipse and see where the ADT +identifies errors in your application. You can also look up +specific changes in the Android APIs in the +<a href="{@docRoot}sdk/android-1.1.html#api-changes">Android 1.1 Version +Notes</a> document.</p> + + +<p>If you have additional trouble updating your code, visit the +<a href="http://groups.google.com/group/android-developers">Android Developers Group</a> +to seek help from other Android developers.</p> + +<p>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. For more information, or if you encounter an "reinstallation" +error when running or installing ApiDemos, see the troubleshooting topic +<a href="{@docRoot}resources/faq/troubleshooting.html#apidemosreinstall">I can't install ApiDemos +apps in my IDE because of a signing error</a> for information about how to solve the problem.</p> + diff --git a/docs/html/sdk/1.5_r1/index.jd b/docs/html/sdk/1.5_r1/index.jd new file mode 100644 index 000000000000..60dfc142e4f6 --- /dev/null +++ b/docs/html/sdk/1.5_r1/index.jd @@ -0,0 +1,5 @@ +page.title=Android 1.5 SDK, Release 1 +sdk.redirect=true +sdk.redirect.path=index.html + +@jd:body diff --git a/docs/html/sdk/1.5_r1/installing.jd b/docs/html/sdk/1.5_r1/installing.jd new file mode 100644 index 000000000000..2ea04e468754 --- /dev/null +++ b/docs/html/sdk/1.5_r1/installing.jd @@ -0,0 +1,8 @@ +@jd:body + +<script type="text/javascript"> + document.location=toRoot+"sdk/installing.html" +</script> + +<p>You should have already been redirected by your browser. Please go to +<a href="{@docRoot}sdk/installing.html">Installing the Android SDK</a>.</p>
\ No newline at end of file diff --git a/docs/html/sdk/1.5_r1/requirements.jd b/docs/html/sdk/1.5_r1/requirements.jd new file mode 100644 index 000000000000..96fdcb26f6fa --- /dev/null +++ b/docs/html/sdk/1.5_r1/requirements.jd @@ -0,0 +1,8 @@ +@jd:body + +<script type="text/javascript"> + document.location=toRoot+"sdk/requirements.html" +</script> + +<p>You should have already been redirected by your browser. Please go to +<a href="{@docRoot}sdk/requirements.html">System Requirements</a>.</p>
\ No newline at end of file diff --git a/docs/html/sdk/1.5_r1/upgrading.jd b/docs/html/sdk/1.5_r1/upgrading.jd new file mode 100644 index 000000000000..0a12d6223415 --- /dev/null +++ b/docs/html/sdk/1.5_r1/upgrading.jd @@ -0,0 +1,395 @@ +page.title=Upgrading the SDK +sdk.version=1.5_r1 +@jd:body + + +<div id="qv-wrapper"> +<div id="qv"> + + <h2>Upgrading quickview</h2> + <ul> + <li>The Android 1.5 SDK uses a new project structure and a new ADT plugin (ADT 0.9). </li> + <li>To move existing projects into the SDK, you must make some minor changes in your + development environment.</li> + <li>The new ADT plugin (ADT 0.9) <em>is not compatible</em> with projects created in previous SDKs.</li> + <li>You need to uninstall your existing ADT plugin, before installing ADT 0.9.</li> + </ul> + + <h2>In this document</h2> + <ol> + <li><a href="#Install">Install the SDK</a></li> + <li><a href="#UpdateAdt">Update Your Eclipse ADT Plugin</a></li> + <li><a href="#UpdateYourProjects">Update Your Projects</a> + <ol> + <li><a href="#EclipseUsers">Eclipse Users</a></li> + <li><a href="#AntUsers">Ant Users</a></li> + </ol> + </li> + <li><a href="#MigrateYourApplications">Migrate Your Applications</a> + <ol><li><a href="#FutureProofYourApps">Future-proof your apps</a></li></ol> + </li> + </ol> + + <h2>Migrating references</h2> + <ol> + <li><a href="{@docRoot}sdk/api_diff/3/changes.html">Android 1.5 API Differences</a></li> + <li><a +href="http://android-developers.blogspot.com/2009/04/future-proofing-your-apps.html">Future-Proofing +Your Apps »</a></li> + <li><a +href="http://android-developers.blogspot.com/2009/04/ui-framework-changes-in-android-15.html">UI +framework changes in Android 1.5 »</a></li> + </ol> + +</div> +</div> + +<p>This document describes how to move your development environment and existing +Android applications from an Android 1.0 or 1.1 SDK to the Android 1.5 SDK. +If you are migrating applications from an SDK older than 1.0, please also read the upgrading +document available in the Android 1.0 SDK package.</p> + +<p>There are several compelling reasons to upgrade, such as new SDK tools +that make developing more efficient and new APIs that allow you to expand the feature-set +of your applications. However, even if you or your applications don't require these enhancements, +it's important that you upgrade to ensure that your applications run properly on the +Android 1.5 platform.</p> + +<p>The Android 1.5 platform will soon be deployable to devices around the world. +If you have already released Android applications to the public, you should +test the forward-compatibility of your applications on the latest version of the platform +as soon as possible. It's unlikely that you'll encounter breakage in your applications, but +in the interest of maintaining the best user experience, you should take no risks. +So, please install the new Android SDK and test your applications on Android 1.5.</p> + +<p>For more information on new SDK features and system changes, +see the <a href="{@docRoot}sdk/android-1.5.html">Android 1.5 Version Notes</a>.</p> + + +<h2 id="Install">Install the SDK</h2> + +<p>If you haven't yet downloaded the SDK, <a href="{@docRoot}sdk/1.5_r1/index.html">download from here</a> +and unpack it into a safe location.</p> + +<p><strong>Before you begin:</strong> +If you had previously setup your PATH variable to point to the SDK tools directory, +then you need to update it to point to the new SDK. For example, for a +<code>.bashrc</code> or <code>.bash_profile</code> file:</p> +<pre>export PATH=$PATH:<em><your_sdk_dir></em>/tools</pre> + +<p>If you don't use Eclipse for development, +skip to <a href="#updateYourProjects">Update Your Projects</a>.</p> + + +<h2 id="UpdateAdt">Update Your Eclipse ADT Plugin</h2> + +<p><em>If you installed ADT-0.9_pre with the early look 1.5 SDK, there have been +additional changes, so please continue with this guide and update to the final ADT 0.9.</em></p> + +<p>A new ADT plugin (version 0.9) is required for the Android 1.5 SDK. +Because the component structure has been changed since Android 1.1, +the Android 1.5 SDK does not work with ADT 0.8 (or older) and previously installed SDKs will not +work with ADT 0.9. However, the Android 1.5 SDK includes an Android 1.1 SDK image that you +can build against while using ADT 0.9. </p> + +<p class="note">For information about using different system images (such as Android 1.1) +while running this SDK, see Developing <a href="{@docRoot}guide/developing/eclipse-adt.html"> +In Eclipse, with ADT</a> or <a href="{@docRoot}guide/developing/other-ide.html">In +Other IDEs</a>, as appropriate for your development environment.</p> + +<p>In order to upgrade your Eclipse IDE to use the new 0.9 ADT, follow the steps below +for your respective version of Eclipse.</p> + +<h3 id="uninstallAdt">Uninstall your previous ADT plugin</h3> + +<p>You must uninstall your existing ADT plugin (0.8 or older). If you do not uninstall it, +you will get a conflict with the Android Editors when installing the new ADT. +(If you have already installed ADT-0.9_pre with the early look 1.5 SDK, you can skip this +uninstall procedure and continue to <a href="#installAdt">Install the 0.9 ADT plugin</a>).</p> + +<table style="font-size:100%"> +<tr><th>Eclipse 3.3 (Europa)</th><th>Eclipse 3.4 (Ganymede)</th></tr> +<tr> +<td width="50%"> +<!-- 3.3 steps --> +<ol> + <li>Select <strong>Help</strong> > <strong>Software Updates</strong> > + <strong>Manage Configuration</strong>. </li> + <li>Expand the list in the left panel to reveal the installed tools.</li> + <li>Right-click "Android Editors" and click <strong>Uninstall</strong>. Click <strong>OK</strong> + to confirm.</li> + <li>Restart Eclipse. + <p>(Do not uninstall "Android Development Tools".)</p></li> +</ol> +</td> +<td> +<!-- 3.4 steps --> +<ol> + <li>Select <strong>Help</strong> > <strong>Software Updates</strong>.</li> + <li>Select the <strong>Installed Software</strong> tab.</li> + <li>Select "Android Editors". Click <strong>Uninstall</strong>.</li> + <li>In the next window, be sure "Android Editors" is checked, then click <strong>Finish</strong> + to uninstall.</li> + <li>Restart Eclipse. + <p>(Do not uninstall "Android Development Tools".)</p></li> +</ol> +</td> +</tr> +</table> + + +<h3 id="installAdt">Install the 0.9 ADT plugin</h3> + +<p>Only install the new plugin once you've completed the procedure to +<a href="#uninstallAdt">Uninstall your previous ADT plugin</a>.</p> + +<table style="font-size:100%"> +<tr><th>Eclipse 3.3 (Europa)</th><th>Eclipse 3.4 (Ganymede)</th></tr> +<tr> +<td width="50%"> +<!-- 3.3 steps --> +<ol> + <li>Select <strong>Help</strong> > <strong>Software Updates</strong> > + <strong>Find and Install</strong>. </li> + <li>Select <strong>Search for new features to install</strong>.</li> + <li>Select the Android plugin entry by checking the box next to it, + then click <strong>Finish</strong>. + <p>(Your original entry for the plugin should still be here. If not, see the guide + to <a href="{@docRoot}sdk/1.5_r1/installing.html#installingplugin">Installing the ADT Plugin</a>.) + </p></li> + <li>In the results, expand the entry for the Android plugin and + be sure that "Developer Tools" is checked, then click <strong>Next</strong>. + (This will install "Android DDMS" and "Android Development Tools".)</li> + <li>Read and accept the license agreement, then click <strong>Next</strong>. + <li>In the next window, click <strong>Finish</strong> to start installation.</li> + <li>The ADT plugin is not digitally signed. Accept the installation anyway by clicking + <strong>Install All</strong>.</li> + <li>Restart Eclipse.</li> +</ol> +</td> +<td> +<!-- 3.4 steps --> +<ol> + <li>Select <strong>Help</strong> > <strong>Software Updates</strong>.</li> + <li>Select the <strong>Available Software</strong> tab.</li> + <li>Expand the entry for the Andriod plugin (may be listed as the location URL) + and select "Developer Tools" by checking the box next to it, then click + <strong>Install</strong>.</li> + <li>On the next window, "Android DDMS" and "Android Development Tools" + should both be checked. Click <strong>Finish</strong>.</li> + <li>Restart Eclipse.</li> +</ol> +</td> +</tr> +</table> + +<p>If you encounter problems, ensure your ADT is fully uninstalled and then +follow the guide to +<a href="{@docRoot}sdk/1.5_r1/installing.html#installingplugin">Installing the ADT Plugin +for Eclipse</a>.</p> + +<h3 id="updateEclipsePrefs">Update your Eclipse SDK Preferences</h3> + +<p>The last step is to update your Eclipse preferences to point to the new SDK directory:</p> + <ol> + <li>Select <strong>Window</strong> > <strong>Preferences</strong> to open the Preferences + panel (Mac: <strong>Eclipse</strong> > <strong>Preferences</strong>).</li> + <li>Select <strong>Android</strong> from the left panel.</li> + <li>For the <em>SDK Location</em> in the main panel, click <strong>Browse</strong> + and locate your SDK directory.</li> + <li>Click <strong>Apply</strong>, then <strong>OK</strong>.</li> + </ol> + + +<h2 id="UpdateYourProjects">Update Your Projects</h2> + +<p>You will now need to update any and all Android projects that you have +developed using a previous version of the Android SDK.</p> + + +<h3 id="EclipseUsers">Eclipse users</h3> + +<p>If you use Eclipse to develop applications, use the following procedure to +update each project:</p> + +<ol> + <li>Right-click on the individual project (in the Package Explorer) + and select <strong>Properties</strong>.</li> + <li>In the properties, open the Android panel and select a "build target" to compile + against. This SDK offers the Android 1.1 and Android 1.5 platforms to choose from. When + you are initially updating your projects to the new SDK, we recommend that you select a build + target with the Android 1.1 platform. Click <strong>Apply</strong>, then + <strong>OK</strong>.</li> +</ol> + +<p>The new plugin creates a <code>gen/</code> folder in your project, in which it puts the +<code>R.java</code> file +and all automatically generated AIDL java files. If you get an error such as +<code>The type R is already defined</code>, +then you probably need to delete your old <code>R.java</code> or your old auto-generated +AIDL Java files in the <code>src/</code> folder. +(This <em>does not</em> apply to your own hand-crafted parcelable AIDL java files.)</p> + +<p>Note that, with the Android 1.5 SDK, there is a new process for running +applications in the Android Emulator. +Specifically, you must create an Android Virtual Device (AVD) before you can launch an instance +of the Emulator. Before attempting to run your applications with the new SDK, +please continue with the section below to +<a href="#MigrateYourApplications">Migrate Your Applications</a>.</p> + + +<h3 id="AntUsers">Ant users</h3> + +<p>If you build your projects using the Ant tool (rather than with Eclipse), note the +following changes with the new SDK tools.</p> + +<h4>build.xml has changed</h4> + +<p>You must re-create your <code>build.xml</code> file.</p> + +<p>If you had customized your <code>build.xml</code>, first make a copy of it:</p> + +<pre> +$ cd <em>my-project</em> +$ cp build.xml build.xml.old +</pre> + +<p>Now use the new <code>android</code> tool (located in <code><em>your_sdk</em>/tools/</code>) +to create a new <code>build.xml</code> that references +a specific platform target:</p> + +<pre>$ android update project --path /path/to/my-project --target 1</pre> + +<p>The "target" corresponds to an Android platform library (including any add-ons, such as +Google APIs) that you would like to build your project against. You can view a list of available +targets (and their corresponding integer ID) with the command, <code>android list targets</code>. +When you are initially updating your projects to the new SDK, we recommend that you select the +first target ("1"), which uses the Android 1.1 platform library.</p> + +<p>A <code>gen/</code> folder will be created the first time you build and your <code>R.java</code> and +your AIDL Java files will be generated in here. You <strong>must</strong> remove +the old <code>R.java</code> and old auto-generated AIDL java files from the +<code>src/</code> folder. (This +does not apply to your own hand-crafted parcelabe AIDL java files.)</p> + +<p class="note"><strong>Note:</strong> The "activitycreator" tool has been replaced +by the new "android" tool. For information on creating new projects with the android tool, +see the documentation about <a href="{@docRoot}guide/developing/other-ide.html">Developing +In Other IDEs</a>.</p> + +<p>Note that, with the Android 1.5 SDK, there is a new process for running +applications in the Android Emulator. +Specifically, you must create an Android Virtual Device (AVD) before you can launch an instance +of the Emulator. Before attempting to run your applications with the new SDK, +please continue with the section below to +<a href="#MigrateYourApplications">Migrate Your Applications</a>.</p> + + +<h2 id="MigrateYourApplications">Migrate Your Applications</h2> + +<p>After you have completed the process above to <a href="#UpdateYourProjects">Update Your +Projects</a>, you are strongly encouraged to run each of your applications in an instance +of the emulator running the Android 1.5 system image. It's possible (however, unlikely) +that you'll encounter some breakage in your application when you run your applications on +the Android 1.5 system image. Whether you believe your application will be affected by +platform changes or not, it's very important that you test the application's +forward-compatibility on Android 1.5.</p> + +<p>To test forward-compatibility, simply run your existing application (as-is) on an Android +Emulator that's running the Android 1.5 system image. The following procedure will guide +you through the process to running your existing applications on an emulator. <em>Please read +the following guide completely before you begin</em>.</p> + +<p>To test your application on an emulator running Android 1.5:</p> +<ol> + <li><a href="#UpdateYourProjects">Update Your Project</a> (you should have done this + already, in the section above).</li> + <li>Run your existing project, as-is, on an emulator running the Android 1.5 system image. + <p>As mentioned in the guide to <a href="#UpdateYourProjects">Update Your Projects</a>, + you should have selected a "build + target" of "1", which compiles your application against the Android 1.1 system image, so there + should be no new errors in your code.</p> + <p>Eclipse users: follow the + <a href="{@docRoot}guide/developing/eclipse-adt.html#Running">Eclipse guide to + Running Your Application</a>.</p> + <p>Ant users: follow the + <a href="{@docRoot}guide/developing/other-ide.html#Running">Ant guide to + Running Your Application</a> + <p>During the procedure to Running Your Application, select a "deployment target" + for the AVD that includes the Android 1.5 platform. + If your application utilizes the Google Maps APIs (i.e., + MapView), be certain to select a target that includes the Google APIs.</p> + <p>Once you complete the procedures to run your application in your respective environment, + linked above, return here.</p> + </li> + <li>With your application running in the emulator, perform all regular testing on the application + to ensure that it functions normally (in both landscape and portrait orientations).</li> +</ol> + +<p>Chances are, your application runs just fine on the Android 1.5 platform — +new devices will be able to safely install and run your application and +current users who update their devices will be able to continue using your application as usual. +However, if something doesn't work the way you expect, then you might need to revisit +your project and make any necessary changes to your code.</p> + +<p>You can check for code breakages caused by API changes by opening your project +in Eclipse, changing the "build target" to one using the Android 1.5 platform, +and see where the ADT identifies errors in your code.</p> + + +<h3 id="FutureProofYourApps">Future-proof your apps</h3> + +<p>There have been several API additions made for this release, but there have been +very few actual API <em>changes</em>. Only a couple (relatively unused) elements +have been removed and a few have been deprecated, so your applications written with the +Android 1.1 system library should work just fine. However, +your application is more likely to encounter problems on Android 1.5 +if it performs any of the following:</p> + +<ul> + <li>Uses internal APIs. That is, APIs that are not officially supported + and not available in the reference documentation. Any un-official APIs are always subject + to change (which is why they're un-official) and some have indeed changed. + </li> + <li>Directly manipulates system settings. There are some settings (such as + GPS, data roaming, bluetooth and others) that used to be writable by + applications but have been changed so that they can only be explicitly modified by the user + through the system settings. Refer to {@link android.provider.Settings.Secure} + to see which settings are now secured and cannot be directly changed by your application. + </li> + <li>Uses View hierarchies that are unreasonably deep (more than 10 or so levels) or + broad (more than 30 total). View hierarchies this big have always been troublesome, but + Android 1.5 is much more efficient at exposing this and your application may crash. + </li> + <li>Makes assumptions about the available hardware. With new support for soft keyboards, + not all devices will have full QWERTY keyboards on the hardware. So if your application + listens for special keypress events that only occur on a keypad, then your application + should degrade gracefully when there is no keyboard available. + </li> + <li>Performs its own layout orientation changes based on the acceletometer (or via other + sensors). Some devices running Android 1.5 will automatically rotate the orientation + (and all devices have the option to turn on auto-rotation), so if your application also + attempts to rotate the orientation, it can result in strange behavior. In addition, if your + application uses the accelerometer to detect shaking and you do not want to rotate the + orientation, then you should lock the current orientation with + <a href="{@docRoot}guide/topics/manifest/activity-element.html#screen">android:screenOrientation</a>. + </li> +</ul> + +<p>Please read our blog post on <a +href="http://android-developers.blogspot.com/2009/04/future-proofing-your-apps.html">Future-Proofing +Your Apps</a> for more information on the issues mentioned above.</p> + +<p>For information +about other changes made to Android 1.5, refer to the following documents:</p> +<ul> + <li><a href="{@docRoot}sdk/api_diff/3/changes.html">Android 1.5 API Differences</a></li> + <li><a href="{@docRoot}sdk/android-1.5.html#api-changes">Android 1.5 Version Notes</a></li> + <li><a +href="http://android-developers.blogspot.com/2009/04/ui-framework-changes-in-android-15.html">UI +framework changes in Android 1.5 »</a></li> +</ul> + +<p>If you have additional trouble updating your code, visit the +<a href="http://groups.google.com/group/android-developers">Android Developers Group</a> +to seek help from other Android developers.</p> diff --git a/docs/html/sdk/1.5_r2/index.jd b/docs/html/sdk/1.5_r2/index.jd new file mode 100644 index 000000000000..4fb99b604701 --- /dev/null +++ b/docs/html/sdk/1.5_r2/index.jd @@ -0,0 +1,5 @@ +page.title=Android 1.5 SDK, Release 2 +sdk.redirect=true +sdk.redirect.path=index.html + +@jd:body diff --git a/docs/html/sdk/1.5_r2/installing.jd b/docs/html/sdk/1.5_r2/installing.jd new file mode 100644 index 000000000000..2ea04e468754 --- /dev/null +++ b/docs/html/sdk/1.5_r2/installing.jd @@ -0,0 +1,8 @@ +@jd:body + +<script type="text/javascript"> + document.location=toRoot+"sdk/installing.html" +</script> + +<p>You should have already been redirected by your browser. Please go to +<a href="{@docRoot}sdk/installing.html">Installing the Android SDK</a>.</p>
\ No newline at end of file diff --git a/docs/html/sdk/1.5_r2/requirements.jd b/docs/html/sdk/1.5_r2/requirements.jd new file mode 100644 index 000000000000..96fdcb26f6fa --- /dev/null +++ b/docs/html/sdk/1.5_r2/requirements.jd @@ -0,0 +1,8 @@ +@jd:body + +<script type="text/javascript"> + document.location=toRoot+"sdk/requirements.html" +</script> + +<p>You should have already been redirected by your browser. Please go to +<a href="{@docRoot}sdk/requirements.html">System Requirements</a>.</p>
\ No newline at end of file diff --git a/docs/html/sdk/1.5_r2/upgrading.jd b/docs/html/sdk/1.5_r2/upgrading.jd new file mode 100644 index 000000000000..bb5fc60e67f8 --- /dev/null +++ b/docs/html/sdk/1.5_r2/upgrading.jd @@ -0,0 +1,395 @@ +page.title=Upgrading the SDK +sdk.version=1.5_r2 +@jd:body + + +<div id="qv-wrapper"> +<div id="qv"> + + <h2>Upgrading the SDK</h2> + <ul> + <li>The Android 1.5 SDK uses a new project structure and a new ADT plugin (ADT 0.9). </li> + <li>To move existing projects into the SDK, you must make some minor changes in your + development environment.</li> + <li>The new ADT plugin (ADT 0.9) <em>is not compatible</em> with projects created in previous SDKs.</li> + <li>You need to uninstall your existing ADT plugin, before installing ADT 0.9.</li> + </ul> + + <h2>In this document</h2> + <ol> + <li><a href="#Install">Install the SDK</a></li> + <li><a href="#UpdateAdt">Update Your Eclipse ADT Plugin</a></li> + <li><a href="#UpdateYourProjects">Update Your Projects</a> + <ol> + <li><a href="#EclipseUsers">Eclipse Users</a></li> + <li><a href="#AntUsers">Ant Users</a></li> + </ol> + </li> + <li><a href="#MigrateYourApplications">Migrate Your Applications</a> + <ol><li><a href="#FutureProofYourApps">Future-proof your apps</a></li></ol> + </li> + </ol> + + <h2>Migrating references</h2> + <ol> + <li><a href="{@docRoot}sdk/api_diff/3/changes.html">Android 1.5 API Differences</a></li> + <li><a +href="http://android-developers.blogspot.com/2009/04/future-proofing-your-apps.html">Future-Proofing +Your Apps »</a></li> + <li><a +href="http://android-developers.blogspot.com/2009/04/ui-framework-changes-in-android-15.html">UI +framework changes in Android 1.5 »</a></li> + </ol> + +</div> +</div> + +<p>This document describes how to move your development environment and existing +Android applications from an Android 1.0 or 1.1 SDK to the Android 1.5 SDK. +If you are migrating applications from an SDK older than 1.0, please also read the upgrading +document available in the Android 1.0 SDK package.</p> + +<p>There are several compelling reasons to upgrade, such as new SDK tools +that make developing more efficient and new APIs that allow you to expand the feature-set +of your applications. However, even if you or your applications don't require these enhancements, +it's important that you upgrade to ensure that your applications run properly on the +Android 1.5 platform.</p> + +<p>The Android 1.5 platform will soon be deployable to devices around the world. +If you have already released Android applications to the public, you should +test the forward-compatibility of your applications on the latest version of the platform +as soon as possible. It's unlikely that you'll encounter breakage in your applications, but +in the interest of maintaining the best user experience, you should take no risks. +So, please install the new Android SDK and test your applications on Android 1.5.</p> + +<p>For more information on new SDK features and system changes, +see the <a href="{@docRoot}sdk/android-1.5.html">Android 1.5 Version Notes</a>.</p> + + +<h2 id="Install">Install the SDK</h2> + +<p>If you haven't yet downloaded the SDK, <a href="{@docRoot}sdk/1.5_r2/index.html">download from here</a> +and unpack it into a safe location.</p> + +<p><strong>Before you begin:</strong> +If you had previously setup your PATH variable to point to the SDK tools directory, +then you need to update it to point to the new SDK. For example, for a +<code>.bashrc</code> or <code>.bash_profile</code> file:</p> +<pre>export PATH=$PATH:<em><your_sdk_dir></em>/tools</pre> + +<p>If you don't use Eclipse for development, +skip to <a href="#updateYourProjects">Update Your Projects</a>.</p> + + +<h2 id="UpdateAdt">Update Your Eclipse ADT Plugin</h2> + +<p><em>If you installed ADT-0.9_pre with the early look 1.5 SDK, there have been +additional changes, so please continue with this guide and update to the final ADT 0.9.</em></p> + +<p>A new ADT plugin (version 0.9) is required for the Android 1.5 SDK. +Because the component structure has been changed since Android 1.1, +the Android 1.5 SDK does not work with ADT 0.8 (or older) and previously installed SDKs will not +work with ADT 0.9. However, the Android 1.5 SDK includes an Android 1.1 SDK image that you +can build against while using ADT 0.9. </p> + +<p class="note">For information about using different system images (such as Android 1.1) +while running this SDK, see Developing <a href="{@docRoot}guide/developing/eclipse-adt.html"> +In Eclipse, with ADT</a> or <a href="{@docRoot}guide/developing/other-ide.html">In +Other IDEs</a>, as appropriate for your development environment.</p> + +<p>In order to upgrade your Eclipse IDE to use the new 0.9 ADT, follow the steps below +for your respective version of Eclipse.</p> + +<h3 id="uninstallAdt">Uninstall your previous ADT plugin</h3> + +<p>You must uninstall your existing ADT plugin (0.8 or older). If you do not uninstall it, +you will get a conflict with the Android Editors when installing the new ADT. +(If you have already installed ADT-0.9_pre with the early look 1.5 SDK, you can skip this +uninstall procedure and continue to <a href="#installAdt">Install the 0.9 ADT plugin</a>).</p> + +<table style="font-size:100%"> +<tr><th>Eclipse 3.3 (Europa)</th><th>Eclipse 3.4 (Ganymede)</th></tr> +<tr> +<td width="50%"> +<!-- 3.3 steps --> +<ol> + <li>Select <strong>Help</strong> > <strong>Software Updates</strong> > + <strong>Manage Configuration</strong>. </li> + <li>Expand the list in the left panel to reveal the installed tools.</li> + <li>Right-click "Android Editors" and click <strong>Uninstall</strong>. Click <strong>OK</strong> + to confirm.</li> + <li>Restart Eclipse. + <p>(Do not uninstall "Android Development Tools".)</p></li> +</ol> +</td> +<td> +<!-- 3.4 steps --> +<ol> + <li>Select <strong>Help</strong> > <strong>Software Updates</strong>.</li> + <li>Select the <strong>Installed Software</strong> tab.</li> + <li>Select "Android Editors". Click <strong>Uninstall</strong>.</li> + <li>In the next window, be sure "Android Editors" is checked, then click <strong>Finish</strong> + to uninstall.</li> + <li>Restart Eclipse. + <p>(Do not uninstall "Android Development Tools".)</p></li> +</ol> +</td> +</tr> +</table> + + +<h3 id="installAdt">Install the 0.9 ADT plugin</h3> + +<p>Only install the new plugin once you've completed the procedure to +<a href="#uninstallAdt">Uninstall your previous ADT plugin</a>.</p> + +<table style="font-size:100%"> +<tr><th>Eclipse 3.3 (Europa)</th><th>Eclipse 3.4 (Ganymede)</th></tr> +<tr> +<td width="50%"> +<!-- 3.3 steps --> +<ol> + <li>Select <strong>Help</strong> > <strong>Software Updates</strong> > + <strong>Find and Install</strong>. </li> + <li>Select <strong>Search for new features to install</strong>.</li> + <li>Select the Android plugin entry by checking the box next to it, + then click <strong>Finish</strong>. + <p>(Your original entry for the plugin should still be here. If not, see the guide + to <a href="{@docRoot}sdk/1.5_r2/installing.html#installingplugin">Installing the ADT Plugin</a>.) + </p></li> + <li>In the results, expand the entry for the Android plugin and + be sure that "Developer Tools" is checked, then click <strong>Next</strong>. + (This will install "Android DDMS" and "Android Development Tools".)</li> + <li>Read and accept the license agreement, then click <strong>Next</strong>. + <li>In the next window, click <strong>Finish</strong> to start installation.</li> + <li>The ADT plugin is not digitally signed. Accept the installation anyway by clicking + <strong>Install All</strong>.</li> + <li>Restart Eclipse.</li> +</ol> +</td> +<td> +<!-- 3.4 steps --> +<ol> + <li>Select <strong>Help</strong> > <strong>Software Updates</strong>.</li> + <li>Select the <strong>Available Software</strong> tab.</li> + <li>Expand the entry for the Andriod plugin (may be listed as the location URL) + and select "Developer Tools" by checking the box next to it, then click + <strong>Install</strong>.</li> + <li>On the next window, "Android DDMS" and "Android Development Tools" + should both be checked. Click <strong>Finish</strong>.</li> + <li>Restart Eclipse.</li> +</ol> +</td> +</tr> +</table> + +<p>If you encounter problems, ensure your ADT is fully uninstalled and then +follow the guide to +<a href="{@docRoot}sdk/1.5_r2/installing.html#installingplugin">Installing the ADT Plugin +for Eclipse</a>.</p> + +<h3 id="updateEclipsePrefs">Update your Eclipse SDK Preferences</h3> + +<p>The last step is to update your Eclipse preferences to point to the new SDK directory:</p> + <ol> + <li>Select <strong>Window</strong> > <strong>Preferences</strong> to open the Preferences + panel (Mac: <strong>Eclipse</strong> > <strong>Preferences</strong>).</li> + <li>Select <strong>Android</strong> from the left panel.</li> + <li>For the <em>SDK Location</em> in the main panel, click <strong>Browse</strong> + and locate your SDK directory.</li> + <li>Click <strong>Apply</strong>, then <strong>OK</strong>.</li> + </ol> + + +<h2 id="UpdateYourProjects">Update Your Projects</h2> + +<p>You will now need to update any and all Android projects that you have +developed using a previous version of the Android SDK.</p> + + +<h3 id="EclipseUsers">Eclipse users</h3> + +<p>If you use Eclipse to develop applications, use the following procedure to +update each project:</p> + +<ol> + <li>Right-click on the individual project (in the Package Explorer) + and select <strong>Properties</strong>.</li> + <li>In the properties, open the Android panel and select a "build target" to compile + against. This SDK offers the Android 1.1 and Android 1.5 platforms to choose from. When + you are initially updating your projects to the new SDK, we recommend that you select a build + target with the Android 1.1 platform. Click <strong>Apply</strong>, then + <strong>OK</strong>.</li> +</ol> + +<p>The new plugin creates a <code>gen/</code> folder in your project, in which it puts the +<code>R.java</code> file +and all automatically generated AIDL java files. If you get an error such as +<code>The type R is already defined</code>, +then you probably need to delete your old <code>R.java</code> or your old auto-generated +AIDL Java files in the <code>src/</code> folder. +(This <em>does not</em> apply to your own hand-crafted parcelable AIDL java files.)</p> + +<p>Note that, with the Android 1.5 SDK, there is a new process for running +applications in the Android Emulator. +Specifically, you must create an Android Virtual Device (AVD) before you can launch an instance +of the Emulator. Before attempting to run your applications with the new SDK, +please continue with the section below to +<a href="#MigrateYourApplications">Migrate Your Applications</a>.</p> + + +<h3 id="AntUsers">Ant users</h3> + +<p>If you build your projects using the Ant tool (rather than with Eclipse), note the +following changes with the new SDK tools.</p> + +<h4>build.xml has changed</h4> + +<p>You must re-create your <code>build.xml</code> file.</p> + +<p>If you had customized your <code>build.xml</code>, first make a copy of it:</p> + +<pre> +$ cd <em>my-project</em> +$ cp build.xml build.xml.old +</pre> + +<p>Now use the new <code>android</code> tool (located in <code><em>your_sdk</em>/tools/</code>) +to create a new <code>build.xml</code> that references +a specific platform target:</p> + +<pre>$ android update project --path /path/to/my-project --target 1</pre> + +<p>The "target" corresponds to an Android platform library (including any add-ons, such as +Google APIs) that you would like to build your project against. You can view a list of available +targets (and their corresponding integer ID) with the command, <code>android list targets</code>. +When you are initially updating your projects to the new SDK, we recommend that you select the +first target ("1"), which uses the Android 1.1 platform library.</p> + +<p>A <code>gen/</code> folder will be created the first time you build and your <code>R.java</code> and +your AIDL Java files will be generated in here. You <strong>must</strong> remove +the old <code>R.java</code> and old auto-generated AIDL java files from the +<code>src/</code> folder. (This +does not apply to your own hand-crafted parcelabe AIDL java files.)</p> + +<p class="note"><strong>Note:</strong> The "activitycreator" tool has been replaced +by the new "android" tool. For information on creating new projects with the android tool, +see the documentation about <a href="{@docRoot}guide/developing/other-ide.html">Developing +In Other IDEs</a>.</p> + +<p>Note that, with the Android 1.5 SDK, there is a new process for running +applications in the Android Emulator. +Specifically, you must create an Android Virtual Device (AVD) before you can launch an instance +of the Emulator. Before attempting to run your applications with the new SDK, +please continue with the section below to +<a href="#MigrateYourApplications">Migrate Your Applications</a>.</p> + + +<h2 id="MigrateYourApplications">Migrate Your Applications</h2> + +<p>After you have completed the process above to <a href="#UpdateYourProjects">Update Your +Projects</a>, you are strongly encouraged to run each of your applications in an instance +of the emulator running the Android 1.5 system image. It's possible (however, unlikely) +that you'll encounter some breakage in your application when you run your applications on +the Android 1.5 system image. Whether you believe your application will be affected by +platform changes or not, it's very important that you test the application's +forward-compatibility on Android 1.5.</p> + +<p>To test forward-compatibility, simply run your existing application (as-is) on an Android +Emulator that's running the Android 1.5 system image. The following procedure will guide +you through the process to running your existing applications on an emulator. <em>Please read +the following guide completely before you begin</em>.</p> + +<p>To test your application on an emulator running Android 1.5:</p> +<ol> + <li><a href="#UpdateYourProjects">Update Your Project</a> (you should have done this + already, in the section above).</li> + <li>Run your existing project, as-is, on an emulator running the Android 1.5 system image. + <p>As mentioned in the guide to <a href="#UpdateYourProjects">Update Your Projects</a>, + you should have selected a "build + target" of "1", which compiles your application against the Android 1.1 system image, so there + should be no new errors in your code.</p> + <p>Eclipse users: follow the + <a href="{@docRoot}guide/developing/eclipse-adt.html#Running">Eclipse guide to + Running Your Application</a>.</p> + <p>Ant users: follow the + <a href="{@docRoot}guide/developing/other-ide.html#Running">Ant guide to + Running Your Application</a> + <p>During the procedure to Running Your Application, select a "deployment target" + for the AVD that includes the Android 1.5 platform. + If your application utilizes the Google Maps APIs (i.e., + MapView), be certain to select a target that includes the Google APIs.</p> + <p>Once you complete the procedures to run your application in your respective environment, + linked above, return here.</p> + </li> + <li>With your application running in the emulator, perform all regular testing on the application + to ensure that it functions normally (in both landscape and portrait orientations).</li> +</ol> + +<p>Chances are, your application runs just fine on the Android 1.5 platform — +new devices will be able to safely install and run your application and +current users who update their devices will be able to continue using your application as usual. +However, if something doesn't work the way you expect, then you might need to revisit +your project and make any necessary changes to your code.</p> + +<p>You can check for code breakages caused by API changes by opening your project +in Eclipse, changing the "build target" to one using the Android 1.5 platform, +and see where the ADT identifies errors in your code.</p> + + +<h3 id="FutureProofYourApps">Future-proof your apps</h3> + +<p>There have been several API additions made for this release, but there have been +very few actual API <em>changes</em>. Only a couple (relatively unused) elements +have been removed and a few have been deprecated, so your applications written with the +Android 1.1 system library should work just fine. However, +your application is more likely to encounter problems on Android 1.5 +if it performs any of the following:</p> + +<ul> + <li>Uses internal APIs. That is, APIs that are not officially supported + and not available in the reference documentation. Any un-official APIs are always subject + to change (which is why they're un-official) and some have indeed changed. + </li> + <li>Directly manipulates system settings. There are some settings (such as + GPS, data roaming, bluetooth and others) that used to be writable by + applications but have been changed so that they can only be explicitly modified by the user + through the system settings. Refer to {@link android.provider.Settings.Secure} + to see which settings are now secured and cannot be directly changed by your application. + </li> + <li>Uses View hierarchies that are unreasonably deep (more than 10 or so levels) or + broad (more than 30 total). View hierarchies this big have always been troublesome, but + Android 1.5 is much more efficient at exposing this and your application may crash. + </li> + <li>Makes assumptions about the available hardware. With new support for soft keyboards, + not all devices will have full QWERTY keyboards on the hardware. So if your application + listens for special keypress events that only occur on a keypad, then your application + should degrade gracefully when there is no keyboard available. + </li> + <li>Performs its own layout orientation changes based on the acceletometer (or via other + sensors). Some devices running Android 1.5 will automatically rotate the orientation + (and all devices have the option to turn on auto-rotation), so if your application also + attempts to rotate the orientation, it can result in strange behavior. In addition, if your + application uses the accelerometer to detect shaking and you do not want to rotate the + orientation, then you should lock the current orientation with + <a href="{@docRoot}guide/topics/manifest/activity-element.html#screen">android:screenOrientation</a>. + </li> +</ul> + +<p>Please read our blog post on <a +href="http://android-developers.blogspot.com/2009/04/future-proofing-your-apps.html">Future-Proofing +Your Apps</a> for more information on the issues mentioned above.</p> + +<p>For information +about other changes made to Android 1.5, refer to the following documents:</p> +<ul> + <li><a href="{@docRoot}sdk/api_diff/3/changes.html">Android 1.5 API Differences</a></li> + <li><a href="{@docRoot}sdk/android-1.5.html#api-changes">Android 1.5 Version Notes</a></li> + <li><a +href="http://android-developers.blogspot.com/2009/04/ui-framework-changes-in-android-15.html">UI +framework changes in Android 1.5 »</a></li> +</ul> + +<p>If you have additional trouble updating your code, visit the +<a href="http://groups.google.com/group/android-developers">Android Developers Group</a> +to seek help from other Android developers.</p> diff --git a/docs/html/sdk/1.5_r3/index.jd b/docs/html/sdk/1.5_r3/index.jd new file mode 100644 index 000000000000..eb10f5ee435f --- /dev/null +++ b/docs/html/sdk/1.5_r3/index.jd @@ -0,0 +1,5 @@ +page.title=Android 1.5 SDK, Release 3 +sdk.redirect=true +sdk.redirect.path=index.html + +@jd:body diff --git a/docs/html/sdk/1.5_r3/installing.jd b/docs/html/sdk/1.5_r3/installing.jd new file mode 100644 index 000000000000..2ea04e468754 --- /dev/null +++ b/docs/html/sdk/1.5_r3/installing.jd @@ -0,0 +1,8 @@ +@jd:body + +<script type="text/javascript"> + document.location=toRoot+"sdk/installing.html" +</script> + +<p>You should have already been redirected by your browser. Please go to +<a href="{@docRoot}sdk/installing.html">Installing the Android SDK</a>.</p>
\ No newline at end of file diff --git a/docs/html/sdk/1.5_r3/requirements.jd b/docs/html/sdk/1.5_r3/requirements.jd new file mode 100644 index 000000000000..96fdcb26f6fa --- /dev/null +++ b/docs/html/sdk/1.5_r3/requirements.jd @@ -0,0 +1,8 @@ +@jd:body + +<script type="text/javascript"> + document.location=toRoot+"sdk/requirements.html" +</script> + +<p>You should have already been redirected by your browser. Please go to +<a href="{@docRoot}sdk/requirements.html">System Requirements</a>.</p>
\ No newline at end of file diff --git a/docs/html/sdk/1.5_r3/upgrading.jd b/docs/html/sdk/1.5_r3/upgrading.jd new file mode 100644 index 000000000000..18c13144b746 --- /dev/null +++ b/docs/html/sdk/1.5_r3/upgrading.jd @@ -0,0 +1,397 @@ +page.title=Upgrading the SDK +sdk.version=1.5 +sdk.rel.id=3 + +@jd:body + + +<div id="qv-wrapper"> +<div id="qv"> + + <h2>Upgrading the SDK</h2> + <ul> + <li>The Android 1.5 SDK uses a new project structure and a new ADT plugin (ADT 0.9). </li> + <li>To move existing projects into the SDK, you must make some minor changes in your + development environment.</li> + <li>The new ADT plugin (ADT 0.9) <em>is not compatible</em> with projects created in previous SDKs.</li> + <li>You need to uninstall your existing ADT plugin, before installing ADT 0.9.</li> + </ul> + + <h2>In this document</h2> + <ol> + <li><a href="#Install">Install the SDK</a></li> + <li><a href="#UpdateAdt">Update Your Eclipse ADT Plugin</a></li> + <li><a href="#UpdateYourProjects">Update Your Projects</a> + <ol> + <li><a href="#EclipseUsers">Eclipse Users</a></li> + <li><a href="#AntUsers">Ant Users</a></li> + </ol> + </li> + <li><a href="#MigrateYourApplications">Migrate Your Applications</a> + <ol><li><a href="#FutureProofYourApps">Future-proof your apps</a></li></ol> + </li> + </ol> + + <h2>Migrating references</h2> + <ol> + <li><a href="{@docRoot}sdk/api_diff/3/changes.html">Android 1.5 API Differences</a></li> + <li><a +href="http://android-developers.blogspot.com/2009/04/future-proofing-your-apps.html">Future-Proofing +Your Apps »</a></li> + <li><a +href="http://android-developers.blogspot.com/2009/04/ui-framework-changes-in-android-15.html">UI +framework changes in Android 1.5 »</a></li> + </ol> + +</div> +</div> + +<p>This document describes how to move your development environment and existing +Android applications from an Android 1.0 or 1.1 SDK to the Android 1.5 SDK. +If you are migrating applications from an SDK older than 1.0, please also read the upgrading +document available in the Android 1.0 SDK package.</p> + +<p>There are several compelling reasons to upgrade, such as new SDK tools +that make developing more efficient and new APIs that allow you to expand the feature-set +of your applications. However, even if you or your applications don't require these enhancements, +it's important that you upgrade to ensure that your applications run properly on the +Android 1.5 platform.</p> + +<p>The Android 1.5 platform will soon be deployable to devices around the world. +If you have already released Android applications to the public, you should +test the forward-compatibility of your applications on the latest version of the platform +as soon as possible. It's unlikely that you'll encounter breakage in your applications, but +in the interest of maintaining the best user experience, you should take no risks. +So, please install the new Android SDK and test your applications on Android 1.5.</p> + +<p>For more information on new SDK features and system changes, +see the <a href="{@docRoot}sdk/android-1.5.html">Android 1.5 Version Notes</a>.</p> + + +<h2 id="Install">Install the SDK</h2> + +<p>If you haven't yet downloaded the SDK, <a href="index.html">download from here</a> +and unpack it into a safe location.</p> + +<p><strong>Before you begin:</strong> +If you had previously setup your PATH variable to point to the SDK tools directory, +then you need to update it to point to the new SDK. For example, for a +<code>.bashrc</code> or <code>.bash_profile</code> file:</p> +<pre>export PATH=$PATH:<em><your_sdk_dir></em>/tools</pre> + +<p>If you don't use Eclipse for development, +skip to <a href="#updateYourProjects">Update Your Projects</a>.</p> + + +<h2 id="UpdateAdt">Update Your Eclipse ADT Plugin</h2> + +<p><em>If you installed ADT-0.9_pre with the early look 1.5 SDK, there have been +additional changes, so please continue with this guide and update to the final ADT 0.9.</em></p> + +<p>A new ADT plugin (version 0.9) is required for the Android 1.5 SDK. +Because the component structure has been changed since Android 1.1, +the Android 1.5 SDK does not work with ADT 0.8 (or older) and previously installed SDKs will not +work with ADT 0.9. However, the Android 1.5 SDK includes an Android 1.1 SDK image that you +can build against while using ADT 0.9. </p> + +<p class="note">For information about using different system images (such as Android 1.1) +while running this SDK, see Developing <a href="{@docRoot}guide/developing/eclipse-adt.html"> +In Eclipse, with ADT</a> or <a href="{@docRoot}guide/developing/other-ide.html">In +Other IDEs</a>, as appropriate for your development environment.</p> + +<p>In order to upgrade your Eclipse IDE to use the new 0.9 ADT, follow the steps below +for your respective version of Eclipse.</p> + +<h3 id="uninstallAdt">Uninstall your previous ADT plugin</h3> + +<p>You must uninstall your existing ADT plugin (0.8 or older). If you do not uninstall it, +you will get a conflict with the Android Editors when installing the new ADT. +(If you have already installed ADT-0.9_pre with the early look 1.5 SDK, you can skip this +uninstall procedure and continue to <a href="#installAdt">Install the 0.9 ADT plugin</a>).</p> + +<table style="font-size:100%"> +<tr><th>Eclipse 3.3 (Europa)</th><th>Eclipse 3.4 (Ganymede)</th></tr> +<tr> +<td width="50%"> +<!-- 3.3 steps --> +<ol> + <li>Select <strong>Help</strong> > <strong>Software Updates</strong> > + <strong>Manage Configuration</strong>. </li> + <li>Expand the list in the left panel to reveal the installed tools.</li> + <li>Right-click "Android Editors" and click <strong>Uninstall</strong>. Click <strong>OK</strong> + to confirm.</li> + <li>Restart Eclipse. + <p>(Do not uninstall "Android Development Tools".)</p></li> +</ol> +</td> +<td> +<!-- 3.4 steps --> +<ol> + <li>Select <strong>Help</strong> > <strong>Software Updates</strong>.</li> + <li>Select the <strong>Installed Software</strong> tab.</li> + <li>Select "Android Editors". Click <strong>Uninstall</strong>.</li> + <li>In the next window, be sure "Android Editors" is checked, then click <strong>Finish</strong> + to uninstall.</li> + <li>Restart Eclipse. + <p>(Do not uninstall "Android Development Tools".)</p></li> +</ol> +</td> +</tr> +</table> + + +<h3 id="installAdt">Install the 0.9 ADT plugin</h3> + +<p>Only install the new plugin once you've completed the procedure to +<a href="#uninstallAdt">Uninstall your previous ADT plugin</a>.</p> + +<table style="font-size:100%"> +<tr><th>Eclipse 3.3 (Europa)</th><th>Eclipse 3.4 (Ganymede)</th></tr> +<tr> +<td width="50%"> +<!-- 3.3 steps --> +<ol> + <li>Select <strong>Help</strong> > <strong>Software Updates</strong> > + <strong>Find and Install</strong>. </li> + <li>Select <strong>Search for new features to install</strong>.</li> + <li>Select the Android plugin entry by checking the box next to it, + then click <strong>Finish</strong>. + <p>(Your original entry for the plugin should still be here. If not, see the guide + to <a href="installing.html#installingplugin">Installing the ADT Plugin</a>.) + </p></li> + <li>In the results, expand the entry for the Android plugin and + be sure that "Developer Tools" is checked, then click <strong>Next</strong>. + (This will install "Android DDMS" and "Android Development Tools".)</li> + <li>Read and accept the license agreement, then click <strong>Next</strong>. + <li>In the next window, click <strong>Finish</strong> to start installation.</li> + <li>The ADT plugin is not digitally signed. Accept the installation anyway by clicking + <strong>Install All</strong>.</li> + <li>Restart Eclipse.</li> +</ol> +</td> +<td> +<!-- 3.4 steps --> +<ol> + <li>Select <strong>Help</strong> > <strong>Software Updates</strong>.</li> + <li>Select the <strong>Available Software</strong> tab.</li> + <li>Expand the entry for the Android plugin (may be listed as the location URL) + and select "Developer Tools" by checking the box next to it, then click + <strong>Install</strong>.</li> + <li>On the next window, "Android DDMS" and "Android Development Tools" + should both be checked. Click <strong>Finish</strong>.</li> + <li>Restart Eclipse.</li> +</ol> +</td> +</tr> +</table> + +<p>If you encounter problems, ensure your ADT is fully uninstalled and then +follow the guide to +<a href="installing.html#installingplugin">Installing the ADT Plugin +for Eclipse</a>.</p> + +<h3 id="updateEclipsePrefs">Update your Eclipse SDK Preferences</h3> + +<p>The last step is to update your Eclipse preferences to point to the new SDK directory:</p> + <ol> + <li>Select <strong>Window</strong> > <strong>Preferences</strong> to open the Preferences + panel (Mac: <strong>Eclipse</strong> > <strong>Preferences</strong>).</li> + <li>Select <strong>Android</strong> from the left panel.</li> + <li>For the <em>SDK Location</em> in the main panel, click <strong>Browse</strong> + and locate your SDK directory.</li> + <li>Click <strong>Apply</strong>, then <strong>OK</strong>.</li> + </ol> + + +<h2 id="UpdateYourProjects">Update Your Projects</h2> + +<p>You will now need to update any and all Android projects that you have +developed using a previous version of the Android SDK.</p> + + +<h3 id="EclipseUsers">Eclipse users</h3> + +<p>If you use Eclipse to develop applications, use the following procedure to +update each project:</p> + +<ol> + <li>Right-click on the individual project (in the Package Explorer) + and select <strong>Properties</strong>.</li> + <li>In the properties, open the Android panel and select a "build target" to compile + against. This SDK offers the Android 1.1 and Android 1.5 platforms to choose from. When + you are initially updating your projects to the new SDK, we recommend that you select a build + target with the Android 1.1 platform. Click <strong>Apply</strong>, then + <strong>OK</strong>.</li> +</ol> + +<p>The new plugin creates a <code>gen/</code> folder in your project, in which it puts the +<code>R.java</code> file +and all automatically generated AIDL java files. If you get an error such as +<code>The type R is already defined</code>, +then you probably need to delete your old <code>R.java</code> or your old auto-generated +AIDL Java files in the <code>src/</code> folder. +(This <em>does not</em> apply to your own hand-crafted parcelable AIDL java files.)</p> + +<p>Note that, with the Android 1.5 SDK, there is a new process for running +applications in the Android Emulator. +Specifically, you must create an Android Virtual Device (AVD) before you can launch an instance +of the Emulator. Before attempting to run your applications with the new SDK, +please continue with the section below to +<a href="#MigrateYourApplications">Migrate Your Applications</a>.</p> + + +<h3 id="AntUsers">Ant users</h3> + +<p>If you build your projects using the Ant tool (rather than with Eclipse), note the +following changes with the new SDK tools.</p> + +<h4>build.xml has changed</h4> + +<p>You must re-create your <code>build.xml</code> file.</p> + +<p>If you had customized your <code>build.xml</code>, first make a copy of it:</p> + +<pre> +$ cd <em>my-project</em> +$ cp build.xml build.xml.old +</pre> + +<p>Now use the new <code>android</code> tool (located in <code><em>your_sdk</em>/tools/</code>) +to create a new <code>build.xml</code> that references +a specific platform target:</p> + +<pre>$ android update project --path /path/to/my-project --target 1</pre> + +<p>The "target" corresponds to an Android platform library (including any add-ons, such as +Google APIs) that you would like to build your project against. You can view a list of available +targets (and their corresponding integer ID) with the command, <code>android list targets</code>. +When you are initially updating your projects to the new SDK, we recommend that you select the +first target ("1"), which uses the Android 1.1 platform library.</p> + +<p>A <code>gen/</code> folder will be created the first time you build and your <code>R.java</code> and +your AIDL Java files will be generated in here. You <strong>must</strong> remove +the old <code>R.java</code> and old auto-generated AIDL java files from the +<code>src/</code> folder. (This +does not apply to your own hand-crafted parcelable AIDL java files.)</p> + +<p class="note"><strong>Note:</strong> The "activitycreator" tool has been replaced +by the new "android" tool. For information on creating new projects with the android tool, +see the documentation about <a href="{@docRoot}guide/developing/other-ide.html">Developing +In Other IDEs</a>.</p> + +<p>Note that, with the Android 1.5 SDK, there is a new process for running +applications in the Android Emulator. +Specifically, you must create an Android Virtual Device (AVD) before you can launch an instance +of the Emulator. Before attempting to run your applications with the new SDK, +please continue with the section below to +<a href="#MigrateYourApplications">Migrate Your Applications</a>.</p> + + +<h2 id="MigrateYourApplications">Migrate Your Applications</h2> + +<p>After you have completed the process above to <a href="#UpdateYourProjects">Update Your +Projects</a>, you are strongly encouraged to run each of your applications in an instance +of the emulator running the Android 1.5 system image. It's possible (however, unlikely) +that you'll encounter some breakage in your application when you run your applications on +the Android 1.5 system image. Whether you believe your application will be affected by +platform changes or not, it's very important that you test the application's +forward-compatibility on Android 1.5.</p> + +<p>To test forward-compatibility, simply run your existing application (as-is) on an Android +Emulator that's running the Android 1.5 system image. The following procedure will guide +you through the process to running your existing applications on an emulator. <em>Please read +the following guide completely before you begin</em>.</p> + +<p>To test your application on an emulator running Android 1.5:</p> +<ol> + <li><a href="#UpdateYourProjects">Update Your Project</a> (you should have done this + already, in the section above).</li> + <li>Run your existing project, as-is, on an emulator running the Android 1.5 system image. + <p>As mentioned in the guide to <a href="#UpdateYourProjects">Update Your Projects</a>, + you should have selected a "build + target" of "1", which compiles your application against the Android 1.1 system image, so there + should be no new errors in your code.</p> + <p>Eclipse users: follow the + <a href="{@docRoot}guide/developing/eclipse-adt.html#Running">Eclipse guide to + Running Your Application</a>.</p> + <p>Ant users: follow the + <a href="{@docRoot}guide/developing/other-ide.html#Running">Ant guide to + Running Your Application</a> + <p>During the procedure to Running Your Application, select a "deployment target" + for the AVD that includes the Android 1.5 platform. + If your application utilizes the Google Maps APIs (i.e., + MapView), be certain to select a target that includes the Google APIs.</p> + <p>Once you complete the procedures to run your application in your respective environment, + linked above, return here.</p> + </li> + <li>With your application running in the emulator, perform all regular testing on the application + to ensure that it functions normally (in both landscape and portrait orientations).</li> +</ol> + +<p>Chances are, your application runs just fine on the Android 1.5 platform — +new devices will be able to safely install and run your application and +current users who update their devices will be able to continue using your application as usual. +However, if something doesn't work the way you expect, then you might need to revisit +your project and make any necessary changes to your code.</p> + +<p>You can check for code breakages caused by API changes by opening your project +in Eclipse, changing the "build target" to one using the Android 1.5 platform, +and see where the ADT identifies errors in your code.</p> + + +<h3 id="FutureProofYourApps">Future-proof your apps</h3> + +<p>There have been several API additions made for this release, but there have been +very few actual API <em>changes</em>. Only a couple (relatively unused) elements +have been removed and a few have been deprecated, so your applications written with the +Android 1.1 system library should work just fine. However, +your application is more likely to encounter problems on Android 1.5 +if it performs any of the following:</p> + +<ul> + <li>Uses internal APIs. That is, APIs that are not officially supported + and not available in the reference documentation. Any un-official APIs are always subject + to change (which is why they're un-official) and some have indeed changed. + </li> + <li>Directly manipulates system settings. There are some settings (such as + GPS, data roaming, bluetooth and others) that used to be writable by + applications but have been changed so that they can only be explicitly modified by the user + through the system settings. Refer to {@link android.provider.Settings.Secure} + to see which settings are now secured and cannot be directly changed by your application. + </li> + <li>Uses View hierarchies that are unreasonably deep (more than 10 or so levels) or + broad (more than 30 total). View hierarchies this big have always been troublesome, but + Android 1.5 is much more efficient at exposing this and your application may crash. + </li> + <li>Makes assumptions about the available hardware. With new support for soft keyboards, + not all devices will have full QWERTY keyboards on the hardware. So if your application + listens for special keypress events that only occur on a keypad, then your application + should degrade gracefully when there is no keyboard available. + </li> + <li>Performs its own layout orientation changes based on the accelerometer (or via other + sensors). Some devices running Android 1.5 will automatically rotate the orientation + (and all devices have the option to turn on auto-rotation), so if your application also + attempts to rotate the orientation, it can result in strange behavior. In addition, if your + application uses the accelerometer to detect shaking and you do not want to rotate the + orientation, then you should lock the current orientation with + <a href="{@docRoot}guide/topics/manifest/activity-element.html#screen">android:screenOrientation</a>. + </li> +</ul> + +<p>Please read our blog post on <a +href="http://android-developers.blogspot.com/2009/04/future-proofing-your-apps.html">Future-Proofing +Your Apps</a> for more information on the issues mentioned above.</p> + +<p>For information +about other changes made to Android 1.5, refer to the following documents:</p> +<ul> + <li><a href="{@docRoot}sdk/api_diff/3/changes.html">Android 1.5 API Differences</a></li> + <li><a href="{@docRoot}sdk/android-1.5.html#api-changes">Android 1.5 Version Notes</a></li> + <li><a +href="http://android-developers.blogspot.com/2009/04/ui-framework-changes-in-android-15.html">UI +framework changes in Android 1.5 »</a></li> +</ul> + +<p>If you have additional trouble updating your code, visit the +<a href="http://groups.google.com/group/android-developers">Android Developers Group</a> +to seek help from other Android developers.</p> diff --git a/docs/html/sdk/1.6_r1/index.jd b/docs/html/sdk/1.6_r1/index.jd new file mode 100644 index 000000000000..e7f9112ce2fb --- /dev/null +++ b/docs/html/sdk/1.6_r1/index.jd @@ -0,0 +1,5 @@ +page.title=Android 1.6 SDK, Release 1 +sdk.redirect=true +sdk.redirect.path=index.html + +@jd:body diff --git a/docs/html/sdk/1.6_r1/installing.jd b/docs/html/sdk/1.6_r1/installing.jd new file mode 100644 index 000000000000..2ea04e468754 --- /dev/null +++ b/docs/html/sdk/1.6_r1/installing.jd @@ -0,0 +1,8 @@ +@jd:body + +<script type="text/javascript"> + document.location=toRoot+"sdk/installing.html" +</script> + +<p>You should have already been redirected by your browser. Please go to +<a href="{@docRoot}sdk/installing.html">Installing the Android SDK</a>.</p>
\ No newline at end of file diff --git a/docs/html/sdk/1.6_r1/requirements.jd b/docs/html/sdk/1.6_r1/requirements.jd new file mode 100644 index 000000000000..96fdcb26f6fa --- /dev/null +++ b/docs/html/sdk/1.6_r1/requirements.jd @@ -0,0 +1,8 @@ +@jd:body + +<script type="text/javascript"> + document.location=toRoot+"sdk/requirements.html" +</script> + +<p>You should have already been redirected by your browser. Please go to +<a href="{@docRoot}sdk/requirements.html">System Requirements</a>.</p>
\ No newline at end of file diff --git a/docs/html/sdk/1.6_r1/upgrading.jd b/docs/html/sdk/1.6_r1/upgrading.jd new file mode 100644 index 000000000000..49535c9bc011 --- /dev/null +++ b/docs/html/sdk/1.6_r1/upgrading.jd @@ -0,0 +1,385 @@ +page.title=Upgrading the SDK +sdk.version=1.6 +@jd:body + + +<div id="qv-wrapper"> +<div id="qv"> + + <h2>Upgrading the SDK</h2> + <ul> + <li>If you are developing on the Android 1.5 SDK, migrating your +applications is straightforward and typically requires no modifications.</li> + <li>For Eclipse users, a new version of ADT is available. To use the Android +1.6 SDK, please upgrade to ADT 0.9.3 (or later).</li> + <li>For Windows users, the SDK includes a new USB driver that you can +install, if you are developing on a device. </li> + <li>A new Android SDK and AVD Manager tool is available. To access +it, run the <code>android</code> tool without options. </li> + </ul> + + <h2>In this document</h2> + <ol> + <li><a href="#Install">Install the SDK</a></li> + <li><a href="#UpdateAdt">Update Your Eclipse ADT Plugin</a></li> + <li><a href="#RunYourApps">Run Your Applications</a></li> + <li><a href="#MigrateYourApps">Migrate Your Applications</a></li> + </ol> + + <h2>Migrating information</h2> + <ol> + <li><a href="{@docRoot}sdk/api_diff/4/changes.html">Android 1.6 API +Differences</a></li> + </ol> + +</div> +</div> + +<p>This document describes how to move your development environment and existing +Android applications from an Android 1.5 SDK to the Android 1.6 SDK. If you are +migrating applications from an SDK older than 1.5, please also read the +upgrading document available in the Android 1.5 SDK package.</p> + +<p>There are several compelling reasons to upgrade, such as new SDK tools that +make developing more efficient and new APIs that allow you to expand the +feature-set of your applications. However, even if you or your applications +don't require these enhancements, it's important that you upgrade to ensure that +your applications run properly on the upcoming Android platform.</p> + +<p>The Android 1.6 platform will soon be deployable to devices around the world. +If you have already released Android applications to the public, you should test +the forward-compatibility of your applications on the latest version of the +platform as soon as possible. It's unlikely that you'll encounter problems in +your applications, but in the interest of maintaining the best user experience, +you should take no risks. So, please install the new Android SDK and test your +applications on the new platform.</p> + +<!-- NOT AVAILABLE FOR PREVIEW RELEASES --> +<p>For more information on new SDK features and system changes, +see the <a href="{@docRoot}sdk/android-1.6.html">Android 1.6 Version Notes</a>.</p> +<!-- --> + +<h2 id="Install">Install the SDK</h2> + +<p>If you haven't yet downloaded the SDK, <a href="index.html">download it from +here</a> and unpack it into a safe location.</p> + +<p>If you had previously setup your <code>PATH</code> variable to point to the SDK +tools directory, then you need to update it to point to the new SDK. For example, for +a <code>.bashrc</code> or <code>.bash_profile</code> file:</p> +<pre>export PATH=$PATH:<em><your_sdk_dir></em>/tools</pre> + + +<h2 id="UpdateAdt">Update Your Eclipse ADT Plugin</h2> + +<p>If you don't use the Eclipse IDE for development, +skip to <a href="#RunYourApps">Run Your Applications</a>.</p> + +<p>A new version of the ADT Plugin, ADT 0.9.3, is available in conjunction with +this SDK release. To use the SDK, you must upgrade your ADT Plugin to version +0.9.3. With ADT 0.9.3, you can still compile your existing applications against +multiple platform versions, such as Android 1.5, Android 1.1, and so on. However, +ADT 0.9.3 is not compatible with previous versions of the SDK and its tools, so +make sure that you upgrade both your SDK <em>and</em> the ADT Plugin.</p> + +The upgrade steps for ADT are described below. For information about new features in ADT, see the <a +href="{@docRoot}sdk/RELEASENOTES.html">Release Notes</a> document. </p> + +<p>If you're currently using a version of ADT <em>older</em> than version 0.9, +then you must uninstall ADT before you proceed (read how to <a +href="{@docRoot}sdk/1.5_r3/upgrading.html#uninstallAdt">Uninstall your previous +ADT plugin</a>). If you currently have version 0.9 or 0.9.1, then you don't need +to uninstall and can continue with the procedure below.</p> + +<table style="font-size:100%"> +<tr><th>Eclipse 3.4 (Ganymede)</th><th>Eclipse 3.5 (Galileo)</th></tr> +<tr> +<td width="50%"> +<!-- 3.4 steps --> +<ol> + <li>Select <strong>Help</strong> > <strong>Software Updates</strong>.</li> + <li>Select the <strong>Available Software</strong> tab.</li> + <li>Select the checkboxes next to Android DDMS and Android Developer Tools, + then click <strong>Update</strong>.</li> + <li>In the resulting Available Updates dialog, ensure that both Android DDMS + and Android Development Tools are selected, then click + <strong>Next</strong>.</li> + <li>Read and accept the license agreement and then click <strong>Finish</strong>. + This will download and install the latest version of Android DDMS and + Android Development Tools.</li> + <li>Restart Eclipse.</li> +</ol> +</td> +<td> +<!-- 3.5 steps --> +<ol> + <li>Select <strong>Help</strong> > <strong>Check for Updates</strong>. </li> + <li>In the resulting Available Updates dialog, locate the Android DDMS and + Android Development Tools features in the list and ensure that the checkboxes + next to them are selected. Click <strong>Next</strong>. + <p>If the Available Updates dialog does not list Android DDMS and Android + Development tools, make sure that you have set up a remote update site + for them, as described in + <a href="installing.html#InstallingADT">Installing the ADT Plugin</a>. + </p></li> + <li>In the Update Details dialog, click <strong>Next</strong>.</li> + <li>Read and accept the license agreement and then click <strong>Finish</strong>. + This will download and install the latest version of Android DDMS and + Android Development Tools.</li> + <li>Restart Eclipse.</li> +</ol> +</td> +</tr> +</table> + +<p>If you encounter problems with this update procedure, try performing a fresh +installation. Fully remove your existing ADT Plugin as described in <a +href="{@docRoot}sdk/1.5_r3/upgrading.html#uninstallAdt">Uninstall your previous +ADT plugin</a> and then follow the guide to <a +href="installing.html#InstallingADT">Installing the ADT Plugin for +Eclipse</a>.</p> + +<h3 id="updateEclipsePrefs">Update your Eclipse SDK Preferences</h3> + +<p>The last step is to update your Eclipse preferences to point to the new +SDK directory:</p> +<ol> + <li>Select <strong>Window</strong> > <strong>Preferences</strong> to open + the Preferences panel (Mac: <strong>Eclipse</strong> > <strong>Preferences + </strong>).</li> + <li>Select <strong>Android</strong> from the left panel.</li> + <li>For the SDK Location, click <strong>Browse</strong> + and locate your SDK directory.</li> + <li>Click <strong>Apply</strong>, then <strong>OK</strong>.</li> +</ol> + + +<h2 id="RunYourApps">Run Your Applications to Test Forward Compatibility</h2> + +<p>Now that you have installed the Android 1.6 SDK, we encourage you run each of +your existing applications on the Android 1.6 system image that is included in +the SDK, to ensure that it functions properly on the new platform. +Testing forward-compatibility in this way is especially important for +applications that you may have already published and that may be installed on +devices that will upgrade to the new platform. </p> + +<p>In most cases, your applications will function properly when run on the new +version of the platform. However, it is possible that you will encounter +unexpected behavior, because of changes in the API or underlying platform. If +you do find problems, you can use the SDK tools to compile and publish an update +to the applications, which users can then download. + +<p>To test forward-compatibility, simply run your application, as-is, on an +instance of the Android Emulator that uses an AVD targeted to the "Android 1.6" +system image. Here are the steps: </p> + +<ol> + <li>Make no changes to your application code.</li> + <li>Create a new AVD that runs the new "Android 1.6" platform. </li> + <li>Launch your application in an emulator running the new AVD.</li> + <li>Perform normal testing on your application to ensure everything works as + expected.</li> +</ol> + +<p>Note that, for the purposes of forward-compatibility testing, you should not +change how your application is compiled. That is, you should continue to compile +the application against the same version of the Android library as before. The +only change needed is to the AVD, which controls the version of the Android +system image (run-time environment) on which the application is run. + +<p>For more information on creating an AVD and launching your application, see +<a href="{@docRoot}guide/developing/eclipse-adt.html#Running">Running Your +Applications (Eclipse)</a> or <a +href="{@docRoot}guide/developing/other-ide.html#Running">Running +Your Applications (other IDEs)</a>, depending on your development +environment.</p> + +<h3 id="FutureProofYourApps">Android 1.6 Forward-Compatibility Tips</h3> + +<p>The new version of the Android platform includes several new APIs, but +very few actual changes to existing APIs. This means that, in most +cases, your applications written with earlier versions of the Android library +should run properly on the Android 1.6 platform. </p> + +<p>However, here are some areas to pay attention to as you test forward-compatibility:</p> + +<ul> + <li><strong>Make sure your application doesn't use internal APIs</strong>. Your +application should not use any APIs that are not officially supported and are +not published in the Android reference documentation. Unofficial APIs can change +at any time without notice and — if your application happens to be using +them — such a change could cause the application to break.</li> + + <li><strong>Watch for assumptions about available hardware</strong>. Remember +that not all compatible devices offer the same hardware capabilities — +screens, keyboards, and physical keys, and so on. As you test your application, +watch for areas where your application depends on the presence of specific +hardware capabilities. If you find dependencies, you can design around them by +building in alternate support or graceful degradation, or you can specify them +as hardware requirements in a +<a href="{@docRoot}guide/topics/manifest/uses-configuration-element.html"><code><uses-configuration></code>.</a> +element in the application's manifest file. Also see the <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html"><code><uses-feature></code></a> +manifest element, which lets your application declare a requirement for +specific features, such as an OpenGL ES version or a camera that has +autofocus capability. +</li> + + <li><strong>Watch for assumptions about available features</strong>. Not all +compatible devices offer equal support for embedded features. same hardware capabilities — +screens, keyboards, and physical keys, and so on. As you test your application, +watch for areas where your application depends on the presence of specific +hardware capabilities. If you find dependencies, you can design around them by +building in alternate support or graceful degradation, or you can specify them +as hardware requirements in a +<a href="{@docRoot}guide/topics/manifest/uses-configuration-element.html"><code><uses-configuration></code>.</a> +element in the application's manifest file. </li> + + <p>When testing forward-compatibility, try running your application in various +AVDs that emulate different hardware configurations. For example, you can create +an AVD that does not offer a physical keyboard or one that uses a dpad instead +of a trackball. Running your application in different emulated hardware +configurations will give you an idea of where its dependencies are and help you +identify problems. </p> + </li> + + <li><strong>Watch for assumptions about screen resolution and +density</strong>. A device's screen resolution and density is likely to affect +the way that your application's UI is rendered, especially if your app specifies +dimensions or positions using pixels or absolute layouts. To ensure consistent +UI across screens, your app should specify the dimensions and positions of +layouts and drawables in relative units that can be scaled by the system as +appropriate, according to the density of the device's screen. Alternatively, you +can create custom sets of layout/drawable resources for specific screens, which +the system can then load as appropriate, based on the current device screen.</p> + + <p>When testing forward-compatibility, try running your application in various +AVDs that emulate different screen resolutions and densities. Also note that, +starting with Android 1.6, the platform provides a Compatibility Mode that +automatically scales the UI of applications if they do not explicitly indicate +support for the current screen in the +<a href="{@docRoot}guide/topics/manifest/supports-screen-element.html"><code><supports-screen></code></a> +element in their manifest files. As part of testing, you should evaluate how +your application is displayed in Compatibility Mode on different screens. </p> + </li> + + <li><strong>Avoid performing layout orientation changes based on the +acceletometer (or via other sensors)</strong>. Some Android-powered devices will +automatically rotate the orientation (and all devices have the option to turn on +auto-rotation), so if your application also attempts to rotate the orientation, +it can result in strange behavior. In addition, if your application uses the +accelerometer to detect shaking and you do not want to rotate the orientation, +then you should lock the current orientation with <a +href="{@docRoot}guide/topics/manifest/activity-element.html#screen">android:screenOrientation</a>. + </li> + +</ul> + +<h2 id="MigrateYourApps">Migrate Your Applications</h2> + +<p>If you want to use any of the new Android 1.6 APIs in your existing +applications, you must first migrate the applications to the new Android +platform version. Generally, migrating an application includes: </p> + +<ul> +<li>Referencing the proper API Level in the application's manifest file, +and</li> +<li>Resetting its project properties so that it is compiled against the Android +1.6 build target.</li> +</ul> + +<p>Additionally, to run your application in the emulator, you need to +create an AVD that uses the Android 1.6 system image. </p> + +<p class="note"><strong>Note:</strong> You only need migrate your application as +described in this section if the application will actually use APIs +<em>introduced</em> in the Android 1.6 platform (which are not available on +devices running older versions of the Android platform). If your application +does not use any new APIs, you can compile and run it without modification and +not migration is necessary.</p> + +<h3>Reference the Proper API Level</h3> + +<p>If your application is using APIs introduced in Android 1.6, you must +reference that dependency in the application's manifest file so that it can be +deployed to devices running the Android 1.6 platform. </p> + +<p>Open the manifest file and locate the <code>minSdkVersion</code> attribute +in the <code><uses-sdk></code> manifest element. Set the value of +<code>minSdkVersion</code> to <code>"4"</code> (the API Level +identifier corresponding to Android 1.6). Here's an example:</p> + +<pre> +<manifest> + ... + <uses-sdk android:minSdkVersion="4" /> + ... +</manifest> +</pre> + +<h3>Compile Against the Proper Build Target</h3> + +<p>Once you've changed the <code>minSdkVersion</code> value in your +application's manifest, you need to set the application's project properties so +that the application will be compiled against the Android 1.6 library. To do so, +follow the steps below for your respective development environment. </p> + +<h4 id="EclipseUsers">Eclipse Users</h4> + +<ol> + <li>Right-click on the individual project (in the Package Explorer) + and select <strong>Properties</strong>.</li> + <li>In the properties, open the Android panel and select a new Project Build Target. + Select "Android 1.6" to target the new platform (or "Google APIs" with the "4" + API Level, if your application uses the Google Maps APIs).</li> + <li>Click <strong>Apply</strong>, then <strong>OK</strong>.</li> +</ol> + +<h4 id="AntUsers">Ant Users</h4> + +<p>Use the <code>android</code> tool (located in +<code><em>your_sdk</em>/tools/</code>) to create a new <code>build.xml</code> +that references the new platform target. To see a list of available targets, +execute:</p> + +<pre>android list targets</pre> + +<p>Select the target <code>id</code> that corresponds to the "Android 1.6" platform +and pass it with the <code>--target</code> parameter when updating your project. +For example:</p> + +<pre>android update project --path /path/to/my-project --target 2</pre> + +<p>If your application uses the Google Maps APIs (i.e., MapView), be certain to +select a Google APIs target.</p> + +<h3>Create an AVD that Uses the Android 1.6 Platform</h3> + +<p>Finally, you need to set up a new AVD that uses the Android 1.6 platform, so that +you can run your application in the emulator. + +<p>To set up the new AVD, use the <code>android</code> tool, available in the +<code>tools/</code> directory of the SDK. You can run the AVD manager by simply +changing to the <code>tools/</code> directory and entering <code>android</code> +at the command line. Click "New" to create the AVD and set its properties.</p> + +<p>When creating the AVD, make sure to select a target of "Android 1.6 - API +Level 4". If your application uses the Google Maps APIs (MapView), select the +target "Google APIs (Google Inc.) - API Level 4". </p> + +<p>For more information about running your application in an AVD, see <a +href="{@docRoot}guide/developing/eclipse-adt.html#Running">Running Your +Application (Eclipse)</a> or <a +href="{@docRoot}guide/developing/other-ide.html#Running">Running Your +Application (other IDEs)</a>. </p> + +<p>For general information about AVDs, see the <a href="{@docRoot}guide/developing/tools/avd.html">Android Virtual +Devices</a> document. </p> + + + +<div class="special"> +<p>If you have trouble migrating to the new version of the SDK, visit the +<a href="http://groups.google.com/group/android-developers">Android Developers Group</a> +to seek help from other Android developers.</p> +</div> + |