| page.title=SDK Tools |
| @jd:body |
| |
| <p>SDK Tools is a downloadable component for the Android SDK. It includes the |
| complete set of development and debugging tools for the Android SDK. </p> |
| |
| <p>If you are new to the Android SDK, the <a |
| href="{@docRoot}sdk/index.html">SDK starter package</a> installs the |
| latest revision of the SDK Tools in the <code><sdk>/tools</code> directory.</p> |
| |
| <p>If you are already using the SDK and you want to update to the latest version |
| of the SDK Tools, use the <em>Android SDK and AVD Manager</em> to get the |
| update, rather than downloading a new SDK starter package. For more information |
| about how to update, see <a |
| href="{@docRoot}sdk/adding-components.html#UpdatingComponents">Updating SDK |
| Components</a>. </p> |
| |
| |
| <h2 id="notes">Revisions</h2> |
| |
| <p>The sections below provide notes about successive releases of |
| the SDK Tools, as denoted by revision number. To determine what revision of the SDK |
| Tools you are using, refer to the "Installed Packages" listing in the Android SDK |
| and AVD Manager. </p> |
| |
| <script type="text/javascript"> |
| function toggleDiv(link) { |
| var toggleable = $(link).parent(); |
| if (toggleable.hasClass("closed")) { |
| //$(".toggleme", toggleable).slideDown("fast"); |
| toggleable.removeClass("closed"); |
| toggleable.addClass("open"); |
| $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/triangle-opened.png")); |
| } else { |
| //$(".toggleme", toggleable).slideUp("fast"); |
| toggleable.removeClass("open"); |
| toggleable.addClass("closed"); |
| $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/triangle-closed.png")); |
| } |
| return false; |
| } |
| </script> |
| <style> |
| .toggleable { |
| padding: .25em 1em; |
| } |
| .toggleme { |
| padding: 1em 1em 0 2em; |
| line-height:1em; |
| } |
| .toggleable a { |
| text-decoration:none; |
| } |
| .toggleme a { |
| text-decoration:underline; |
| } |
| .toggleable.closed .toggleme { |
| display:none; |
| } |
| #jd-content .toggle-img { |
| margin:0; |
| } |
| </style> |
| |
| |
| <div class="toggleable opened"> |
| <a href="#" onclick="return toggleDiv(this)"> |
| <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-img" height="9px" width="9px" /> |
| SDK Tools, Revision 13</a> <em>(September 2011)</em> |
| <div class="toggleme"> |
| <dl> |
| <dt>Dependencies:</dt> |
| <dd> |
| <p>If you are developing in Eclipse with ADT, note that the SDK Tools r13 is designed for use with |
| ADT 12.0.0 and later. If you haven't already, we highly recommend updating your <a |
| href="{@docRoot}sdk/eclipse-adt.html">ADT Plugin</a> to 12.0.0.</p> |
| |
| <p>If you are developing outside Eclipse, you must have <a href="http://ant.apache.org/">Apache |
| Ant</a> 1.8 or later.</p> |
| |
| <dt>General notes:</dt> |
| <dd> |
| <ul> |
| <li>Fix compilation issue in Ant (<code>dex</code> step) when paths have spaces.</li> |
| <li>Fix issue in emulator installation when paths have spaces.</li> |
| <li>Fix issue when AVD paths have spaces.</li> |
| <li>Fix rendering issue when using emulator scaling (<a href="http://code.google.com/p/android/issues/detail?id=18299">see more</a>).</li> |
| </ul> |
| </dd> |
| </dl> |
| </div> |
| </div> |
| |
| |
| <div class="toggleable closed"> |
| <a href="#" onclick="return toggleDiv(this)"> |
| <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" /> |
| SDK Tools, Revision 12</a> <em>(July 2011)</em> |
| <div class="toggleme"> |
| <dl> |
| <dt>Dependencies:</dt> |
| <dd> |
| <p>If you are developing in Eclipse with ADT, note that the SDK Tools r12 is designed for use with |
| ADT 12.0.0 and later. If you haven't already, we highly recommend updating your <a |
| href="{@docRoot}sdk/eclipse-adt.html">ADT Plugin</a> to 12.0.0.</p> |
| |
| <p>If you are developing outside Eclipse, you must have <a href="http://ant.apache.org/">Apache |
| Ant</a> 1.8 or later.</p> |
| |
| <dt>General notes:</dt> |
| <dd> |
| <ul> |
| <li>The AVD manager and emulator can now use system images |
| compiled for ARM v7 and x86 CPUs.</li> |
| </ul> |
| </dd> |
| </dl> |
| </div> |
| </div> |
| |
| <div class="toggleable closed"> |
| <a href="#" onclick="return toggleDiv(this)"> |
| <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" /> |
| SDK Tools, Revision 11</a> <em>(May 2011)</em> |
| <div class="toggleme"> |
| <dl> |
| <dt>Dependencies:</dt> |
| <dd> |
| <p>If you are developing in Eclipse with ADT, note that the SDK Tools r11 is designed for use with |
| ADT 10.0.1 and later. If you haven't already, we highly recommend updating your <a |
| href="{@docRoot}sdk/eclipse-adt.html">ADT Plugin</a> to 10.0.1.</p> |
| |
| <p>If you are developing outside Eclipse, you must have <a href="http://ant.apache.org/">Apache |
| Ant</a> 1.8 or later.</p> |
| |
| <dt>General notes:</dt> |
| <dd> |
| <ul> |
| <li>Miscellaneous emulator changes to support Android 3.1.</li> |
| </ul> |
| </dd> |
| </dl> |
| </div> |
| </div> |
| |
| |
| <div class="toggleable closed"> |
| <a href="#" onclick="return toggleDiv(this)"> |
| <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" |
| width="9px" /> |
| SDK Tools, Revision 10</a> <em>(February 2011)</em> |
| <div class="toggleme"> |
| <dl> |
| <dt>Dependencies:</dt> |
| <dd> |
| <p>If you are developing in Eclipse with ADT, note that the SDK Tools r10 is |
| designed for use with ADT 10.0.0 and later. After installing SDK Tools r10, we |
| highly recommend updating your ADT Plugin to 10.0.0.</p> |
| |
| <p>If you are developing outside Eclipse, you must have <a href="http://ant.apache.org/">Apache |
| Ant</a> 1.8 or later.</p> |
| |
| <dt>General notes:</dt> |
| <dd> |
| <ul> |
| <li>The tools now automatically generate Java Programming Language source files (in the |
| <code>gen</code> directory) and |
| bytecode (in the <code>res/raw</code> directory) from your native <code>.rs</code> files</li> |
| </ul> |
| </dd> |
| </dl> |
| </div> |
| </div> |
| |
| |
| |
| <div class="toggleable closed"> |
| <a href="#" onclick="return toggleDiv(this)"> |
| <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" /> |
| SDK Tools, Revision 9</a> <em>(January 2011)</em> |
| <div class="toggleme"> |
| <dl> |
| <dt>Dependencies:</dt> |
| <dd> |
| <p>If you are developing in Eclipse with ADT, note that the SDK Tools r9 is |
| designed for use with ADT 9.0.0 and later. After installing SDK Tools r9, we |
| highly recommend updating your ADT Plugin to 9.0.0.</p> |
| |
| <p>If you are developing outside Eclipse, you must have <a href="http://ant.apache.org/">Apache |
| Ant</a> 1.8 or later.</p> |
| |
| <dt>Upgrading to SDK Tools r9:</dt> |
| <dd> |
| <p>If you are upgrading to SDK Tools r9 from SDK Tools r7 or earlier, the default installed location |
| for the <code>adb</code> tool has changed from <code><<em>SDK</em>>/tools/adb</code> to |
| <code><<em>SDK</em>>/platform-tools/adb</code>. This means that you should |
| add the new location to your PATH and modify any custom build scripts to |
| reference the new location. Copying the <code>adb</code> executable from the new |
| location to the old is not recommended, since subsequent updates to the SDK |
| Tools will delete the file.</p> |
| </dd> |
| |
| <dt>General notes:</dt> |
| <dd> |
| <ul> |
| <li>The default ProGuard configuration, <code>proguard.cfg</code>, now ignores the following classes: |
| <ul> |
| <li>classes that extend {@link android.preference.Preference}</li> |
| <li>classes that extend {@link android.app.backup.BackupAgentHelper}</li> |
| </ul> |
| </li> |
| <li>Ant lib rules now allow you to override <code>java.encoding</code>, <code>java.source</code>, |
| and <code>java.target</code> properties.</li> |
| <li>The default encoding for the <code>javac</code> Ant task is now UTF-8.</li> |
| <li>The LogCat view in DDMS now properly displays UTF-8 characters.</li> |
| <li>The SDK Manager is more reliable on Windows. For details on the improvements, see the |
| <a href="http://tools.android.com/recent/sdkmanagerfixes">Android Tools Project Site</a>. </li> |
| <li>Early look at the new snapshot feature: To improve startup time for the emulator, you can |
| enable snapshots for the system state. The emulator will then restore to the state when it last |
| closed almost instantly. <strong>Note:</strong> The snapshot feature is still under active |
| development and might not always perform as expected.</li> |
| <li>Fixed the missing JAR file error that prevented <code>draw9patch</code> from running.</li> |
| <li>Fixed the Windows launch scripts <code>hierarchyviewer</code> and <code>ddms</code> to support |
| the new location of <code>adb</code>.</li> |
| <li>Known issues with emulator performance: Because the Android emulator must simulate the ARM |
| instruction set architecture on your computer, emulator performance is slow. We're working hard to |
| resolve the performance issues and it will improve in future releases.</li> |
| </ul> |
| </dd> |
| </dl> |
| </div> |
| </div> |
| |
| <div class="toggleable closed"> |
| <a href="#" onclick="return toggleDiv(this)"> |
| <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" /> |
| SDK Tools, Revision 8</a> <em>(December 2010)</em> |
| <div class="toggleme"> |
| |
| <dl> |
| <dt>Dependencies:</dt> |
| <dd> |
| <p>If you are developing in Eclipse with ADT, note that SDK Tools r8 is |
| designed for use with ADT 8.0.0 and later. After installing SDK Tools r8, we |
| highly recommend updating your ADT Plugin to 8.0.0.</p> |
| |
| <p>If you are developing outside Eclipse, you must have <a href="http://ant.apache.org/">Apache |
| Ant</a> 1.8 or later.</p> |
| |
| <p>Also note that SDK Tools r8 requires a new SDK component called |
| <em>Platform-tools</em>. The new Platform-tools component lets all SDK platforms |
| (Android 2.1, Android 2.2, and so on) use the same (latest) version of build |
| tools such as <code>adb</code>, <code>aapt</code>, <code>aidl</code>, and |
| <code>dx</code>. To download the Platform-tools component, use the Android SDK |
| Manager, as described in <a href="adding-components.html">Adding SDK |
| Components</a></p> |
| |
| <dt>Upgrading from SDK Tools r7:</dt> |
| <dd> |
| <p>If you are upgrading to SDK Tools r8 from an earlier version, note that the |
| the default installed location for the <code>adb</code> tool has changed from |
| <code><<em>SDK</em>>/tools/adb</code> to |
| <code><<em>SDK</em>>/platform-tools/adb</code>. This means that you should |
| add the new location to your PATH and modify any custom build scripts to |
| reference the new location. Copying the <code>adb</code> executable from the new |
| location to the old is not recommended, since subsequent updates to the SDK |
| Tools will delete the file.</p> |
| </dd> |
| |
| <dt>General notes:</dt> |
| <dd> |
| <ul> |
| <li>All SDK platforms now support Library Projects.</li> |
| <li>Support for a true debug build. Developers no longer need to add the |
| <code>android:debuggable</code> attribute to the |
| <code><application></code> tag in the manifest — the build tools add |
| the attribute automatically. In Eclipse/ADT, all incremental builds are assumed |
| to be debug builds, so the tools insert <code>android:debuggable="true"</code>. |
| When exporting a signed release build, the tools do not add the attribute. In |
| Ant, a <code>ant debug</code> command automatically inserts the |
| <code>android:debuggable="true"</code> attribute, while <code>ant release</code> |
| does not. If <code>android:debuggable="true"</code> is manually set, then |
| <code>ant release</code> will actually do a debug build, rather than a release |
| build.</li> |
| <li>Automatic ProGuard support in release builds. Developers generate a ProGuard |
| configuration file using the <code>android</code> tool — the build tools |
| then automatically run ProGuard against the project sources during the build. |
| For more information, see the <a |
| href="{@docRoot}guide/developing/tools/proguard.html">ProGuard</a> |
| documentation. </li> |
| <li>New overridable Ant javac properties: <code>java.encoding</code>, |
| <code>java.source</code>, and <code>java.target</code> (default values are |
| "ascii", "1.5", and "1.5", respectively).</li> |
| <li>New UI for the HierarchyViewer tool.</li> |
| </ul> |
| </dd> |
| </dl> |
| </div> |
| </div> |
| |
| <div class="toggleable closed"> |
| <a href="#" onclick="return toggleDiv(this)"> |
| <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" /> |
| SDK Tools, Revision 7</a> <em>(September 2010)</em> |
| <div class="toggleme"> |
| |
| <dl> |
| <dt>Dependencies:</dt> |
| <dd> |
| <p>If you are developing in Eclipse with ADT, note that SDK Tools r7 is |
| designed for use with ADT 0.9.8 and later. After installing SDK Tools r7, we |
| highly recommend updating your ADT Plugin to 0.9.8.</p> |
| </dd> |
| |
| <dt>General notes:</dt> |
| <dd> |
| <ul> |
| <li>Added support for library projects that depend on other library projects.</li> |
| <li>Adds support for aidl files in library projects.</li> |
| <li>Adds support for extension targets in Ant build to perform tasks between the |
| normal tasks: <code>-pre-build</code>, <code>-pre-compile</code>, and |
| <code>-post-compile</code>.</li> |
| <li>Adds support for "headless" SDK update. See <code>android -h update sdk</code> |
| for more information.</li> |
| <li>Fixes location control in DDMS to work in any locale not using '.' as a |
| decimal point.</li> |
| </li> |
| </ul> |
| </dd> |
| </dl> |
| </div> |
| </div> |
| |
| <div class="toggleable closed"> |
| <a href="#" onclick="return toggleDiv(this)"> |
| <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" /> |
| SDK Tools, Revision 6</a> <em>(May 2010)</em> |
| <div class="toggleme"> |
| |
| <dl> |
| <dt>Dependencies:</dt> |
| <dd> |
| <p>If you are developing in Eclipse with ADT, note that SDK Tools r6 is |
| designed for use with ADT 0.9.7 and later. After installing SDK Tools r6, we |
| highly recommend updating your ADT Plugin to 0.9.7.</p> |
| </dd> |
| |
| <dt>Library projects:</dt> |
| <dd> |
| <p>The SDK Tools now support the use of <em>library projects</em> during |
| development, a capability that lets you store shared Android application |
| code and resources in a separate development project. You can then reference the |
| library project from other Android projects and, at build time, the tools |
| compile the shared code and resources as part of the dependent applications. |
| More information about this feature is available in the <a |
| href="{@docRoot}guide/developing/projects/index.html#LibraryProjects">Creating and Managing Projects</a> document.</p> |
| <p>If you are developing in Eclipse, <a href="eclipse-adt.html">ADT</a> |
| provides the equivalent library project support.</p> |
| </dd> |
| </dl> |
| </div> |
| </div> |
| |
| <div class="toggleable closed"> |
| <a href="#" onclick="return toggleDiv(this)"> |
| <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" /> |
| SDK Tools, Revision 5</a> <em>(March 2010)</em> |
| <div class="toggleme"> |
| |
| <dl> |
| <dt>Dependencies:</dt> |
| <dd><ul> |
| <li>If you are developing in Eclipse with ADT, note that SDK Tools r5 is |
| designed for use with ADT 0.9.6 and later. After installing SDK Tools r5, we |
| highly recommend updating your ADT Plugin to 0.9.6.</li> |
| <li>For Mac OS platforms, OS X 10.4.x (Tiger) is no longer |
| officially supported. </li> |
| </ul> |
| </dd> |
| |
| <dt>SDK and AVD Manager:</dt> |
| <dd> |
| <ul> |
| <li>Fixes SSL download for the standalone version of the SDK Updater.</li> |
| <li>Fixes issue with 64-bit JVM on Windows.</li> |
| <li>Adds support for platform samples components.</li> |
| <li>Improves support for dependency between components.</li> |
| <li>AVDs now sorted by API level.</li> |
| <li>The AVD creation dialog now enforces a minimum SD card size of 9MB.</li> |
| <li>Prevents deletion of running AVDs.</li> |
| <li>Settings are now automatically saved, no need to click "Apply".</li> |
| </ul> |
| </dd> |
| |
| <dt>Emulator:</dt> |
| <dd> |
| <ul> |
| <li>Emulator now requires SD card to be 9MB or more.</li> |
| </ul> |
| </dd> |
| |
| <dt>Layoutopt:</dt> |
| <dd> |
| <ul> |
| <li>Fixes <code>layoutopt.bat</code> to execute correctly on Windows.</li> |
| </ul> |
| </dd> |
| </dl> |
| </div> |
| </div> |
| |
| <div class="toggleable closed"> |
| <a href="#" onclick="return toggleDiv(this)"> |
| <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" /> |
| SDK Tools, Revision 4</a> <em>(December 2009)</em> |
| <div class="toggleme"> |
| |
| <dl> |
| <dt>Dependencies:</dt> |
| <dd><p>SDK Tools r4 is compatible with ADT 0.9.5 and later, but not |
| compatible with earlier versions. If you are developing in Eclipse with ADT, you |
| <strong>must</strong> update your ADT plugin to version 0.9.5 or higher if you |
| install SDK Tools r4 in your SDK. </p></dd> |
| |
| <dt>General notes:</dt> |
| <dd> |
| <ul> |
| <li>Launcher script now forces GDK_NATIVE_WINDOW=true (linux only), to fix a |
| compatibility issue between GTK and SWT.</li> |
| </ul> |
| </dd> |
| |
| <dt>Android SDK and AVD Manager:</dt> |
| <dd> |
| <ul> |
| <li>AVD Launch dialog now shows scale value.</li> |
| <li>Fixes potential NPE in SDK Manager on AVD launch, for older AVD with no |
| skin name specified.</li> |
| <li>Fixes XML validation issue in on older Java versions.</li> |
| <li>No longer forces the use of Java 1.5 on Mac OS X.</li> |
| </ul> |
| </dd> |
| |
| <dt>Emulator:</dt> |
| <dd> |
| <ul> |
| <li>No longer limits the size of the system partition.</li> |
| </ul> |
| </dd> |
| |
| <dt>Ant build tools:</dt> |
| <dd> |
| <ul> |
| <li>.apk packaging now properly ignores vi swap files as well as hidden files.</li> |
| </ul> |
| </dd> |
| </dl> |
| </div> |
| </div> |
| |
| <div class="toggleable closed"> |
| <a href="#" onclick="return toggleDiv(this)"> |
| <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" /> |
| SDK Tools, Revision 3</a> <em>(October 2009)</em> |
| <div class="toggleme"> |
| |
| <dl> |
| <dt>Dependencies:</dt> |
| <dd><p>SDK Tools r3 is compatible with ADT 0.9.4 and later, but not |
| compatible with earlier versions. If you are developing in Eclipse with ADT, you |
| <strong>must</strong> update your ADT plugin to version 0.9.4 or higher if you |
| install SDK Tools r3 in your SDK.</p> |
| </dd> |
| |
| <dt>Android tool:</dt> |
| <dd> |
| <ul> |
| <li>Adds new <code>android create test-project</code> and <code>android update |
| test-project</code> commands to allow for greater flexibility in the location of the |
| main and test projects.</li> |
| </ul> |
| </dd> |
| |
| <dt>DDMS:</dt> |
| <dd> |
| <ul> |
| <li>Adds a button to dump HPROF file for running applications (app must be able |
| to write to the sdcard).</li> |
| <li>Button to start/stop profiling of a running application (app must be able to |
| write to the sdcard). Upon stop, Traceview will automatically be launched to |
| display the trace.</li> |
| <li>Fixed DDMS, Traceview, and the AVD Mananger/SDK Updater to run on Mac OS X |
| 10.6.</li> |
| <li>Fixed screenshot support for devices running 32-bit framebuffer.</li> |
| </ul> |
| </dd> |
| |
| <dt>Android SDK and AVD Manager:</dt> |
| <dd> |
| <ul> |
| <li>Provides a new UI that lets you set options for controlling |
| the emulator skin, screen size/density, and scale factor used when launching |
| an AVD.</li> |
| <li>Provides improved AVD creation UI, which lets you customize the hardware |
| properties of your AVDs.</li> |
| <li>Now enforces dependencies between platforms and tools components, and |
| between SDK add-ons and platforms.</li> |
| </ul> |
| </dd> |
| |
| <dt>Layoutopt, a new tool for optimizing layouts:</dt> |
| |
| <dd><p>The SDK Tools r3 package includes <code>layoutopt</code>, a new command-line |
| tool that helps you optimize your layout hierarchies. When run against your |
| layout files, the tool analyzes their hierarchies and notifies you of |
| inefficiencies and other potential issues. The tool also provides simple |
| solutions for the issues it finds. For usage, see <a |
| href="/guide/developing/tools/layoutopt.html">layoutopt</a>.</p> |
| </dd> |
| </dl> |
| </div> |
| </div> |