• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1page.title=SDK Tools
2@jd:body
3
4<p>SDK Tools is a downloadable component for the Android SDK. It includes the
5complete set of development and debugging tools for the Android SDK.</p>
6
7<p>If you are new to the Android SDK, the <a
8href="{@docRoot}sdk/index.html">SDK starter package</a> installs the
9latest revision of the SDK Tools in the <code>&lt;sdk&gt;/tools</code> directory.</p>
10
11<p>If you are already using the SDK and you want to update to the latest version
12of the SDK Tools, use the <em>Android SDK Manager</em> to get the
13update, rather than downloading a new SDK starter package. For more information
14about how to update, see <a
15href="{@docRoot}sdk/exploring.html#UpdatingComponents">Exploring the SDK</a>.</p>
16
17
18<h2 id="notes">Revisions</h2>
19
20<p>The sections below provide notes about successive releases of
21the SDK Tools, as denoted by revision number. To determine what revision of the SDK
22Tools you are using, refer to the "Installed Packages" listing in the Android SDK Manager. </p>
23
24<p>For a summary of all known issues in SDK Tools, see <a
25href="http://tools.android.com/knownissues">http://tools.android.com/knownissues</a>.</p>
26
27<script type="text/javascript">
28function toggleDiv(link) {
29  var toggleable = $(link).parent();
30  if (toggleable.hasClass("closed")) {
31    //$(".toggleme", toggleable).slideDown("fast");
32    toggleable.removeClass("closed");
33    toggleable.addClass("open");
34    $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/triangle-opened.png"));
35  } else {
36    //$(".toggleme", toggleable).slideUp("fast");
37    toggleable.removeClass("open");
38    toggleable.addClass("closed");
39    $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/triangle-closed.png"));
40  }
41  return false;
42}
43</script>
44<style>
45.toggleable {
46padding: 5px 0 0;
47}
48.toggleme {
49  padding: 10px 0 0 20px;
50}
51.toggleable a {
52  text-decoration:none;
53}
54.toggleme a {
55  text-decoration:underline;
56}
57.toggleable.closed .toggleme {
58  display:none;
59}
60#jd-content .toggle-img {
61  margin:0 5px 3px 0;
62}
63</style>
64
65<div class="toggleable opened">
66  <a href="#" onclick="return toggleDiv(this)">
67    <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-img" height="9px"
68    width="9px" />
69    SDK Tools, Revision 20</a> <em>(June 2012)</em>
70
71  <div class="toggleme">
72  <dl>
73    <dt>Dependencies:</dt>
74    <dd>
75      <ul>
76        <li>Android SDK Platform-tools revision 12 or later.</li>
77        <li>If you are developing in Eclipse with ADT, note that the SDK Tools r20 is designed for
78        use with ADT 20.0.0 and later. If you haven't already, we highly recommend updating your
79        <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 20.0.0.</li>
80        <li>If you are developing outside Eclipse, you must have
81          <a href="http://ant.apache.org/">Apache Ant</a> 1.8 or later.</li>
82    </ul>
83    </dd>
84    <dt>General notes:</dt>
85    <dd>
86      <ul>
87        <li>Added new Device Monitor application, grouping Android debugging tools into a
88single application, including ddms, traceview, hierarchyviewer and Tracer for GLES. (<a
89href="{@docRoot}tools/help/gltracer.html">more info</a>)</li>
90        <li>Added new System Trace new tool for tracing Android system activity. This tool allow you
91to capture a slice of system activity, plus additional information tagged from the <strong>Settings
92&gt; Developer Options &gt; Monitoring: Enable traces</strong> or with specific calls added to your
93application code.</li>
94        </li>
95        <li>Build System
96          <ul>
97            <li>Added automatic merging of library project manifest files into the including
98project's manifest. Enable this feature with the {@code manifestmerger.enabled} property.</li>
99            <li>Added automatic ProGuard support for the {@code aapt -G} flag. This change causes
100the build system to generate a temporary ProGuard keep-rules file containing classes that
101are referenced from XML files (such as custom views) and pass this to ProGuard at shrink-time. This
102can make the resulting APK much smaller when using just a small portion of a large library project
103(such as the Android Support library), since the catch-all rules to keep all custom views from the
104default ProGuard configuration file have also been removed.</li>
105            <li>Added two ProGuard configuration files for use in projects: {@code
106proguard-android-optimize.txt} which enables optimizations and {@code proguard-android.txt} which
107disables them.</li>
108          </ul>
109        </li>
110        <li>SDK Manager
111          <ul>
112            <li>Improved caching to reduce downloading of repository definitions.</li>
113            <li>Added <strong>Tools > Manage Add-on Sites</strong> option to allow deactivation of
114      third-party sites for improved performance (e.g., if one or more sites are temporarily slow to
115      load.)</li>
116            <li>Added settings for the SDK Manager download cache (<strong>SDK Manager > Tools >
117Options</strong>).</li>
118          </ul>
119        </li>
120      </ul>
121    </dd>
122    <dt>Bug fixes:</dt>
123    <dd>
124      <ul>
125        <li>Build
126          <ul>
127            <li>Fixed problem where test projects did not have access to the full classpath of tested
128projects, including Library Projects and third-party jars.</li>
129            <li>Fixed deployment logic so that applications with embedded tests can now be deployed
130and tested like test applications, including code coverage information.</li>
131            <li>Fixed Ant support for testing projects with libraries.</li>
132          </ul>
133        </li>
134      </ul>
135    </dd>
136    </dl>
137  </div>
138</div>
139
140<div class="toggleable closed">
141  <a href="#" onclick="return toggleDiv(this)">
142    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px"
143    width="9px" />
144    SDK Tools, Revision 19</a> <em>(April 2012)</em>
145
146  <div class="toggleme">
147    <p class="note"><strong>Note:</strong> This update of SDK Tools is only available through
148the <a href="{@docRoot}sdk/exploring.html">Android SDK Manager</a>. Use this tool to
149download and install this update.</p>
150
151    <dl>
152    <dt>Dependencies:</dt>
153    <dd>
154      <ul>
155        <li>Android SDK Platform-tools revision 9 or later.</li>
156        <li>If you are developing in Eclipse with ADT, note that the SDK Tools r19 is designed for
157        use with ADT 18.0.0 and later. If you haven't already, we highly recommend updating your
158        <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 18.0.0.</li>
159        <li>If you are developing outside Eclipse, you must have
160          <a href="http://ant.apache.org/">Apache Ant</a> 1.8 or later.</li>
161    </ul>
162    </dd>
163    <dt>Bug fixes:</dt>
164    <dd>
165      <ul>
166        <li>Fixed an issue that prevented some developers from running the emulator with GPU
167acceleration.</li>
168      </ul>
169    </dd>
170    </dl>
171  </div>
172</div>
173
174<div class="toggleable closed">
175  <a href="#" onclick="return toggleDiv(this)">
176    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px"
177    width="9px" />
178    SDK Tools, Revision 18</a> <em>(April 2012)</em>
179
180  <div class="toggleme">
181    <p class="caution"><strong>Important:</strong> To download the new Android
182    4.0 system components from the Android SDK Manager, you must first update the
183    SDK tools to revision 14 or later and restart the Android SDK Manager. If you do not,
184    the Android 4.0 system components will not be available for download.</p>
185
186    <dl>
187    <dt>Dependencies:</dt>
188    <dd>
189      <ul>
190        <li>Android SDK Platform-tools revision 9 or later.</li>
191        <li>If you are developing in Eclipse with ADT, note that the SDK Tools r18 is designed for
192        use with ADT 18.0.0 and later. If you haven't already, we highly recommend updating your
193        <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 18.0.0.</li>
194        <li>If you are developing outside Eclipse, you must have
195          <a href="http://ant.apache.org/">Apache Ant</a> 1.8 or later.</li>
196    </ul>
197    </dd>
198    <dt>General notes:</dt>
199    <dd>
200      <ul>
201        <li>Updated the SdkController app to encapsulate both sensor and multitouch emulation
202          functionality.</li>
203      </ul>
204    </dd>
205    <dt>Bug fixes:</dt>
206    <dd>
207      <ul>
208        <li>Fixed Ant issues where some jar libraries in the {@code libs/} folder are not picked up
209in some cases.</li>
210      </ul>
211    </dd>
212    </dl>
213  </div>
214</div>
215
216<div class="toggleable closed">
217  <a href="#" onclick="return toggleDiv(this)">
218    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px"
219    width="9px" />
220    SDK Tools, Revision 17</a> <em>(March 2012)</em>
221
222  <div class="toggleme">
223    <p class="caution"><strong>Important:</strong> To download the new Android
224    4.0 system components from the Android SDK Manager, you must first update the
225    SDK tools to revision 14 or later and restart the Android SDK Manager. If you do not,
226    the Android 4.0 system components will not be available for download.</p>
227
228    <dl>
229    <dt>Dependencies:</dt>
230    <dd>
231      <ul>
232        <li>Android SDK Platform-tools revision 9 or later.</li>
233        <li>If you are developing in Eclipse with ADT, note that the SDK Tools r17 is designed for
234        use with ADT 17.0.0 and later. If you haven't already, we highly recommend updating your
235        <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 17.0.0.</li>
236        <li>If you are developing outside Eclipse, you must have
237          <a href="http://ant.apache.org/">Apache Ant</a> 1.8 or later.</li>
238    </ul>
239    </dd>
240    <dt>General notes:</dt>
241    <dd>
242      <ul>
243        <li>Emulator
244          <ul>
245            <li>Added support for hardware accelerated graphics rendering. This feature requires an
246API Level 15, Revision 3 or later system image.
247(<a href="{@docRoot}tools/devices/emulator.html#accel-graphics">more info</a>)
248            </li>
249            <li>Added support for running Android x86 system images in virtualization mode on
250Windows and Mac OS X.
251(<a href="{@docRoot}tools/devices/emulator.html#accel-vm">more info</a>)
252              <p class="note"><strong>Note:</strong> Use the Android SDK Manager to download and
253install x86 system images. Android x86 system images are not available for all API levels.</p>
254            </li>
255            <li>Added experimental support for multi-touch input by enabing the emulator to receive
256              touch input from a USB-tethered physical Android device.
257              (<a href="http://tools.android.com/tips/hardware-emulation">more info</a>)</li>
258          </ul>
259        </li>
260        <li>Added viewing of live detailed network usage of an app in DDMS. (<a
261    href="http://tools.android.com/recent/detailednetworkusageinddms">more info</a>)</li>
262        <li>ProGuard
263          <ul>
264            <li>Updated the bundled ProGuard tool to version 4.7. In addition to many new features,
265this update fixes the {@code Conversion to Dalvik format failed with error 1} error some users have
266experienced.</li>
267            <li>Updated the default {@code proguard.cfg} file with better default flags for
268              Android.</li>
269            <li>Split the ProGuard configuration file has been in half, with project specific flags
270kept in project and the generic Android flags distributed (and updated) with the tools
271themselves.</li>
272          </ul>
273        </li>
274        <li>Build
275          <ul>
276            <li>Added a feature that allows you to run some code only in debug mode. Builds now
277generate a class called {@code BuildConfig} containing a {@code DEBUG} constant that is
278automatically set according to your build type. You can check the ({@code BuildConfig.DEBUG})
279constant in your code to run debug-only functions.</li>
280            <li>Fixed issue when a project and its libraries include the same jar file in their libs
281              folder. (<a href="http://tools.android.com/recent/dealingwithdependenciesinandroidprojects">more
282              info</a>)</li>
283            <li>Added support for custom views with custom attributes in libraries. Layouts using
284custom attributes must use the namespace URI {@code http://schemas.android.com/apk/res-auto} instead
285of the URI that includes the app package name. This URI is replaced with the app specific one at
286build time.</li>
287          </ul>
288        </li>
289        <li>Lint
290          <ul>
291            <li>Updated Lint to check Android application code. Lint rules which previously
292performed pattern based searches in the application code (such as the unused resource check) have
293been rewritten to use the more accurate Java-style parse trees.</li>
294            <li>Added support for checking library projects. This change means that rules such as
295the unused resource check properly handle resources declared in a library project and referenced in
296a downstream project.</li>
297            <li>Added ability to suppress Lint warnings in Java code with the new
298{@code @SuppressLint} annotation, and in XML files with the new tools: namespace and
299ignore attribute. (<a
300    href="http://tools.android.com/recent/ignoringlintwarnings">more info</a>)</li>
301            <li>New Lint checks:
302              <ul>
303                <li>Added check for Android API calls that require a version of Android higher than
304                  the minimum supported version. You can use the new {@code @TargetApi} annotation
305                  to suppress warnings when the code is wrapped in a system version condition.
306                  (<a href="http://tools.android.com/recent/lintapicheck">more info</a>)</li>
307                <li>Added over 20 new Lint rules, including checks for
308                  <a href="http://tools.android.com/recent/lintperformancechecks">performance</a>,
309                  XML layouts, manifest and file handling.</li>
310              </ul>
311            </li>
312          </ul>
313        </li>
314      </ul>
315    </dd>
316    </dl>
317  </div>
318</div>
319
320<div class="toggleable closed">
321  <a href="#" onclick="return toggleDiv(this)">
322    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px"
323    width="9px" />
324    SDK Tools, Revision 16</a> <em>(December 2011)</em>
325
326  <div class="toggleme">
327    <p class="caution"><strong>Important:</strong> To download the new Android
328    4.0 system components from the Android SDK Manager, you must first update the
329    SDK tools to revision 14 or later and restart the Android SDK Manager. If you do not,
330    the Android 4.0 system components will not be available for download.</p>
331
332<dl>
333<dt>Dependencies:</dt>
334<dd>
335  <ul>
336    <li>Android SDK Platform-tools revision 9 or later.</li>
337    <li>If you are developing in Eclipse with ADT, note that the SDK Tools r16 is designed for use
338    with ADT 16.0.0 and later. If you haven't already, we highly recommend updating your
339    <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 16.0.0.</li>
340    <li>If you are developing outside Eclipse, you must have <a href="http://ant.apache.org/">Apache
341    Ant</a> 1.8 or later.</li>
342</ul>
343</dd>
344<dt>General notes:</dt>
345<dd>
346  <ul>
347    <li>Added Lint tools to detect common errors in Android projects.
348      (<a href="http://tools.android.com/recent/lint">more info</a>)</li>
349    <li>Added sensor emulation support, which allows the emulator to read sensor data from a
350      physical Android device.
351      (<a href="http://tools.android.com/recent/sensoremulation">more info</a>)</li>
352    <li>Added support for using a webcam to emulate a camera on Mac OS X.</li>
353  </ul>
354</dd>
355<dt>Bug fixes:</dt>
356<dd>
357  <ul>
358    <li>Snapshots now work for Android 4.0 system images.</li>
359    <li>Fixed several small issues for the build file.
360    (<a href="http://code.google.com/p/android/issues/detail?id=21023">Issue 21023</a>,
361    <a href="http://code.google.com/p/android/issues/detail?id=21267">Issue 21267</a>,
362    <a href="http://code.google.com/p/android/issues/detail?id=21465">Issue 21465</a>,
363    <a href="http://code.google.com/p/android/issues/detail?id=21525">Issue 21525</a>).</li>
364  </ul>
365</dd>
366</dl>
367</div>
368</div>
369
370<div class="toggleable closed">
371  <a href="#" onclick="return toggleDiv(this)">
372    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px"
373    width="9px" />
374    SDK Tools, Revision 15</a> <em>(October 2011)</em>
375
376  <div class="toggleme">
377    <p class="caution"><strong>Important:</strong> To download the new Android
378    4.0 system components from the Android SDK Manager, you must first update the
379    SDK tools to revision 14 or later and restart the Android SDK Manager. If you do not,
380    the Android 4.0 system components will not be available for download.</p>
381  <dl>
382<dt>Dependencies:</dt>
383<dd>
384  <ul><li>Android SDK Platform-tools revision 9 or later.</li>
385  <li>If you are developing in Eclipse with ADT, note that the SDK Tools r15 is designed for use
386  with ADT 15.0.0 and later. If you haven't already, we highly recommend updating your <a
387  href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 15.0.0.</li>
388  <li>If you are developing outside Eclipse, you must have <a href="http://ant.apache.org/">Apache
389  Ant</a> 1.8 or later.</li>
390</ul>
391
392<dt>Bug fixes:</dt>
393<dd>
394  <ul>
395    <li>Fixed emulator crash on Linux due to improper webcam detection
396    (<a href="http://code.google.com/p/android/issues/detail?id=20952">Issue 20952</a>).</li>
397    <li>Fixed emulator issue when using the <code>-wipe-data</code> argument.</li>
398    <li>Fixed build issue when using Renderscript in projects that target API levels 11-13
399    (<a href="http://code.google.com/p/android/issues/detail?id=21006">Issue 21006</a>).</li>
400    <li>Fixed issue when creating an AVD using the GoogleTV addon
401    (<a href="http://code.google.com/p/android/issues/detail?id=20963">Issue 20963</a>).</li>
402    <li>Fixed <code>ant test</code>
403    (<a href="http://code.google.com/p/android/issues/detail?id=20979">Issue 20979</a>).</li>
404    <li>Fixed <code>android update project</code>
405    (<a href="http://code.google.com/p/android/issues/detail?id=20535">Issue 20535</a>).</li>
406    <li>Fixed scrolling issue in the new Logcat panel of DDMS.</li>
407    <li>Fixed issue with MonkeyRunner
408    (<a href="http://code.google.com/p/android/issues/detail?id=20964">Issue 20964</a>).</li>
409    <li>Fixed issues in the SDK Manager
410    (<a href="http://code.google.com/p/android/issues/detail?id=20939">Issue 20939</a>,
411    <a href="http://code.google.com/p/android/issues/detail?id=20607">Issue 20607</a>).</li>
412  </ul>
413</dd>
414</dl>
415</div>
416</div>
417
418<div class="toggleable closed">
419  <a href="#" onclick="return toggleDiv(this)">
420    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px"
421    width="9px" />
422    SDK Tools, Revision 14</a> <em>(October 2011)</em>
423
424  <div class="toggleme">
425    <p class="note"><strong>Important:</strong> To download the new Android
426    4.0 system components from the Android SDK Manager, you must first update the
427    SDK tools to revision 14 and restart the Android SDK Manager. If you do not,
428    the Android 4.0 system components will not be available for download.</p>
429  <dl>
430<dt>Dependencies:</dt>
431<dd>
432  <ul><li>Android SDK Platform-tools revision 8 or later.</li>
433  <li>If you are developing in Eclipse with ADT, note that the SDK Tools r14 is designed for use
434  with ADT 14.0.0 and later. If you haven't already, we highly recommend updating your <a
435  href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 14.0.0.</li>
436  <li>If you are developing outside Eclipse, you must have <a href="http://ant.apache.org/">Apache
437  Ant</a> 1.8 or later.</li>
438</ul>
439
440<dt>General notes:</dt>
441<dd>
442  <ul>
443    <li>Added webcam support to Android 4.0 or later platforms to emulate rear-facing cameras when
444    one webcam is present, and to emulate both rear-facing and front-facing cameras when two
445    webcams are present. Webcam support is for Windows and Linux only.
446    Mac support will come in a later release.</li>
447    <li>Changed <code>default.properties</code> to <code>project.properties</code> and
448    <code>build.properties</code> to <code>ant.properties</code>. Any existing
449    projects that you build with Ant must be updated with the <code>android update project</code>
450    command.</li>
451    <li>Changed Ant <code>build.xml</code> file to support improvements to the
452    build system and added and modified Ant commands to support these changes. For a list of Ant
453commands, see the
454<a href="{@docRoot}tools/building/building-cmdline.html#AntReference">Ant Command
455Reference</a>.</li>
456    <li>Changed how library projects are built.</li>
457    <li>Improved incremental builds, so that resource compilation runs less frequently. Builds no
458    longer run when you edit strings or layouts (unless you add a new <code>id</code>) and no longer
459    run once for each library project.</li>
460    <li>Introduced a "PNG crunch cache" that only runs on modified PNG files, instead of
461    crunching all existing PNG files, all the time.</li>
462    <li>Revamped the SDK Manager UI (<a href="http://tools.android.com/recent/newsdkmanager">more
463info</a>).</li>
464  </ul>
465  <p>For a complete overview of the build system changes and what you need to do to support them,
466see the <a href="http://tools.android.com/recent/buildchangesinrevision14">Android Tools Project
467site</a>.</p>
468</dd>
469</dl>
470</div>
471</div>
472
473<div class="toggleable closed">
474  <a href="#" onclick="return toggleDiv(this)">
475        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px"
476        width="9px" />
477SDK Tools, Revision 13</a> <em>(September 2011)</em>
478  <div class="toggleme">
479  <dl>
480<dt>Dependencies:</dt>
481<dd>
482<p>If you are developing in Eclipse with ADT, note that the SDK Tools r13 is designed for use with
483ADT 12.0.0 and later. If you haven't already, we highly recommend updating your <a
484href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 12.0.0.</p>
485
486<p>If you are developing outside Eclipse, you must have <a href="http://ant.apache.org/">Apache
487Ant</a> 1.8 or later.</p>
488
489<dt>General notes:</dt>
490<dd>
491  <ul>
492    <li>Fix compilation issue in Ant (<code>dex</code> step) when paths have spaces.</li>
493    <li>Fix issue in emulator installation when paths have spaces.</li>
494    <li>Fix issue when AVD paths have spaces.</li>
495    <li>Fix rendering issue when using emulator scaling (<a href="http://code.google.com/p/android/issues/detail?id=18299">see more</a>).</li>
496  </ul>
497</dd>
498</dl>
499</div>
500</div>
501
502
503<div class="toggleable closed">
504  <a href="#" onclick="return toggleDiv(this)">
505        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
506SDK Tools, Revision 12</a> <em>(July 2011)</em>
507  <div class="toggleme">
508  <dl>
509<dt>Dependencies:</dt>
510<dd>
511<p>If you are developing in Eclipse with ADT, note that the SDK Tools r12 is designed for use with
512ADT 12.0.0 and later. If you haven't already, we highly recommend updating your <a
513href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 12.0.0.</p>
514
515<p>If you are developing outside Eclipse, you must have <a href="http://ant.apache.org/">Apache
516Ant</a> 1.8 or later.</p>
517
518<dt>General notes:</dt>
519<dd>
520  <ul>
521    <li>The AVD manager and emulator can now use system images
522    compiled for ARM v7 and x86 CPUs.</li>
523  </ul>
524</dd>
525</dl>
526</div>
527</div>
528
529<div class="toggleable closed">
530  <a href="#" onclick="return toggleDiv(this)">
531        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
532SDK Tools, Revision 11</a> <em>(May 2011)</em>
533  <div class="toggleme">
534  <dl>
535<dt>Dependencies:</dt>
536<dd>
537<p>If you are developing in Eclipse with ADT, note that the SDK Tools r11 is designed for use with
538ADT 10.0.1 and later. If you haven't already, we highly recommend updating your <a
539href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 10.0.1.</p>
540
541<p>If you are developing outside Eclipse, you must have <a href="http://ant.apache.org/">Apache
542Ant</a> 1.8 or later.</p>
543
544<dt>General notes:</dt>
545<dd>
546  <ul>
547    <li>Miscellaneous emulator changes to support Android 3.1.</li>
548  </ul>
549</dd>
550</dl>
551</div>
552</div>
553
554
555<div class="toggleable closed">
556  <a href="#" onclick="return toggleDiv(this)">
557        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px"
558width="9px" />
559SDK Tools, Revision 10</a> <em>(February 2011)</em>
560  <div class="toggleme">
561  <dl>
562<dt>Dependencies:</dt>
563<dd>
564<p>If you are developing in Eclipse with ADT, note that the SDK Tools r10 is
565designed for use with ADT 10.0.0 and later. After installing SDK Tools r10, we
566highly recommend updating your ADT Plugin to 10.0.0.</p>
567
568<p>If you are developing outside Eclipse, you must have <a href="http://ant.apache.org/">Apache
569Ant</a> 1.8 or later.</p>
570
571<dt>General notes:</dt>
572<dd>
573  <ul>
574    <li>The tools now automatically generate Java Programming Language source files (in the
575<code>gen</code> directory) and
576    bytecode (in the <code>res/raw</code> directory) from your native <code>.rs</code> files</li>
577  </ul>
578</dd>
579</dl>
580</div>
581</div>
582
583
584
585<div class="toggleable closed">
586  <a href="#" onclick="return toggleDiv(this)">
587        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
588SDK Tools, Revision 9</a> <em>(January 2011)</em>
589  <div class="toggleme">
590  <dl>
591<dt>Dependencies:</dt>
592<dd>
593<p>If you are developing in Eclipse with ADT, note that the SDK Tools r9 is
594designed for use with ADT 9.0.0 and later. After installing SDK Tools r9, we
595highly recommend updating your ADT Plugin to 9.0.0.</p>
596
597<p>If you are developing outside Eclipse, you must have <a href="http://ant.apache.org/">Apache
598Ant</a> 1.8 or later.</p>
599
600<dt>Upgrading to SDK Tools r9:</dt>
601<dd>
602<p>If you are upgrading to SDK Tools r9 from SDK Tools r7 or earlier, the default installed location
603for the <code>adb</code> tool has changed from <code>&lt;<em>SDK</em>&gt;/tools/adb</code> to
604<code>&lt;<em>SDK</em>&gt;/platform-tools/adb</code>. This means that you should
605add the new location to your PATH and modify any custom build scripts to
606reference the new location. Copying the <code>adb</code> executable from the new
607location to the old is not recommended, since subsequent updates to the SDK
608Tools will delete the file.</p>
609</dd>
610
611<dt>General notes:</dt>
612<dd>
613  <ul>
614    <li>The default ProGuard configuration, <code>proguard.cfg</code>, now ignores the following classes:
615      <ul>
616        <li>classes that extend {@link android.preference.Preference}</li>
617        <li>classes that extend {@link android.app.backup.BackupAgentHelper}</li>
618      </ul>
619    </li>
620    <li>Ant lib rules now allow you to override <code>java.encoding</code>, <code>java.source</code>,
621    and <code>java.target</code> properties.</li>
622    <li>The default encoding for the <code>javac</code> Ant task is now UTF-8.</li>
623    <li>The LogCat view in DDMS now properly displays UTF-8 characters.</li>
624    <li>The SDK Manager is more reliable on Windows. For details on the improvements, see the
625    <a href="http://tools.android.com/recent/sdkmanagerfixes">Android Tools Project Site</a>. </li>
626    <li>Early look at the new snapshot feature: To improve startup time for the emulator, you can
627enable snapshots for the system state. The emulator will then restore to the state when it last
628closed almost instantly. <strong>Note:</strong> The snapshot feature is still under active
629development and might not always perform as expected.</li>
630    <li>Fixed the missing JAR file error that prevented <code>draw9patch</code> from running.</li>
631    <li>Fixed the Windows launch scripts <code>hierarchyviewer</code> and <code>ddms</code> to support
632    the new location of <code>adb</code>.</li>
633    <li>Known issues with emulator performance: Because the Android emulator must simulate the ARM
634instruction set architecture on your computer, emulator performance is  slow. We're working hard to
635resolve the performance issues and it will improve in future releases.</li>
636  </ul>
637</dd>
638</dl>
639</div>
640</div>
641
642<div class="toggleable closed">
643  <a href="#" onclick="return toggleDiv(this)">
644        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
645SDK Tools, Revision 8</a> <em>(December 2010)</em>
646  <div class="toggleme">
647
648<dl>
649<dt>Dependencies:</dt>
650<dd>
651<p>If you are developing in Eclipse with ADT, note that SDK Tools r8 is
652designed for use with ADT 8.0.0 and later. After installing SDK Tools r8, we
653highly recommend updating your ADT Plugin to 8.0.0.</p>
654
655<p>If you are developing outside Eclipse, you must have <a href="http://ant.apache.org/">Apache
656Ant</a> 1.8 or later.</p>
657
658<p>Also note that SDK Tools r8 requires a new SDK component called
659<em>Platform-tools</em>. The new Platform-tools component lets all SDK platforms
660(Android 2.1, Android 2.2, and so on) use the same (latest) version of build
661tools such as <code>adb</code>, <code>aapt</code>, <code>aidl</code>, and
662<code>dx</code>. To download the Platform-tools component, use the Android SDK
663Manager, as described in <a href="{@docRoot}sdk/exploring.html">Exploring the
664SDK</a></p>
665
666<dt>Upgrading from SDK Tools r7:</dt>
667<dd>
668<p>If you are upgrading to SDK Tools r8 from an earlier version, note that the
669the default installed location for the <code>adb</code> tool has changed from
670<code>&lt;<em>SDK</em>&gt;/tools/adb</code> to
671<code>&lt;<em>SDK</em>&gt;/platform-tools/adb</code>. This means that you should
672add the new location to your PATH and modify any custom build scripts to
673reference the new location. Copying the <code>adb</code> executable from the new
674location to the old is not recommended, since subsequent updates to the SDK
675Tools will delete the file.</p>
676</dd>
677
678<dt>General notes:</dt>
679<dd>
680<ul>
681<li>All SDK platforms now support Library Projects.</li>
682<li>Support for a true debug build. Developers no longer need to add the
683<code>android:debuggable</code> attribute to the
684<code>&lt;application&gt;</code> tag in the manifest &mdash; the build tools add
685the attribute automatically. In Eclipse/ADT, all incremental builds are assumed
686to be debug builds, so the tools insert <code>android:debuggable="true"</code>.
687When exporting a signed release build, the tools do not add the attribute. In
688Ant, a <code>ant debug</code> command automatically inserts the
689<code>android:debuggable="true"</code> attribute, while <code>ant release</code>
690does not. If <code>android:debuggable="true"</code> is manually set, then
691<code>ant release</code> will actually do a debug build, rather than a release
692build.</li>
693<li>Automatic ProGuard support in release builds. Developers generate a ProGuard
694configuration file using the <code>android</code> tool &mdash; the build tools
695then automatically run ProGuard against the project sources during the build.
696For more information, see the <a
697href="{@docRoot}tools/help/proguard.html">ProGuard</a>
698documentation. </li>
699<li>New overridable Ant javac properties: <code>java.encoding</code>,
700<code>java.source</code>, and <code>java.target</code> (default values are
701"ascii", "1.5", and "1.5", respectively).</li>
702<li>New UI for the HierarchyViewer tool.</li>
703</ul>
704</dd>
705</dl>
706 </div>
707</div>
708
709<div class="toggleable closed">
710  <a href="#" onclick="return toggleDiv(this)">
711        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
712SDK Tools, Revision 7</a> <em>(September 2010)</em>
713  <div class="toggleme">
714
715<dl>
716<dt>Dependencies:</dt>
717<dd>
718<p>If you are developing in Eclipse with ADT, note that SDK Tools r7 is
719designed for use with ADT 0.9.8 and later. After installing SDK Tools r7, we
720highly recommend updating your ADT Plugin to 0.9.8.</p>
721</dd>
722
723<dt>General notes:</dt>
724<dd>
725<ul>
726<li>Added support for library projects that depend on other library projects.</li>
727<li>Adds support for aidl files in library projects.</li>
728<li>Adds support for extension targets in Ant build to perform tasks between the
729normal tasks: <code>-pre-build</code>, <code>-pre-compile</code>, and
730<code>-post-compile</code>.</li>
731<li>Adds support for "headless" SDK update. See <code>android -h update sdk</code>
732for more information.</li>
733<li>Fixes location control in DDMS to work in any locale not using '.' as a
734decimal point.</li>
735</ul>
736</ul>
737</dd>
738</dl>
739 </div>
740</div>
741
742<div class="toggleable closed">
743  <a href="#" onclick="return toggleDiv(this)">
744        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
745SDK Tools, Revision 6</a> <em>(May 2010)</em>
746  <div class="toggleme">
747
748<dl>
749<dt>Dependencies:</dt>
750<dd>
751<p>If you are developing in Eclipse with ADT, note that SDK Tools r6 is
752designed for use with ADT 0.9.7 and later. After installing SDK Tools r6, we
753highly recommend updating your ADT Plugin to 0.9.7.</p>
754</dd>
755
756<dt>Library projects:</dt>
757<dd>
758<p>The SDK Tools now support the use of <em>library projects</em> during
759development, a capability that lets you store shared Android application
760code and resources in a separate development project. You can then reference the
761library project from other Android projects and, at build time, the tools
762compile the shared code and resources as part of the dependent applications.
763More information about this feature is available in the <a
764href="{@docRoot}tools/projects/index.html#LibraryProjects">Creating and Managing Projects</a> document.</p>
765<p>If you are developing in Eclipse, <a href="eclipse-adt.html">ADT</a>
766provides the equivalent library project support.</p>
767</dd>
768</dl>
769 </div>
770</div>
771
772<div class="toggleable closed">
773  <a href="#" onclick="return toggleDiv(this)">
774        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
775SDK Tools, Revision 5</a> <em>(March 2010)</em>
776  <div class="toggleme">
777
778<dl>
779<dt>Dependencies:</dt>
780<dd><ul>
781<li>If you are developing in Eclipse with ADT, note that SDK Tools r5 is
782designed for use with ADT 0.9.6 and later. After installing SDK Tools r5, we
783highly recommend updating your ADT Plugin to 0.9.6.</li>
784<li>For Mac OS platforms, OS X 10.4.x (Tiger) is no longer
785officially supported. </li>
786</ul>
787</dd>
788
789<dt>SDK and AVD Manager:</dt>
790<dd>
791<ul>
792<li>Fixes SSL download for the standalone version of the SDK Updater.</li>
793<li>Fixes issue with 64-bit JVM on Windows.</li>
794<li>Adds support for platform samples components.</li>
795<li>Improves support for dependency between components.</li>
796<li>AVDs now sorted by API level.</li>
797<li>The AVD creation dialog now enforces a minimum SD card size of 9MB.</li>
798<li>Prevents deletion of running AVDs.</li>
799<li>Settings are now automatically saved, no need to click "Apply".</li>
800</ul>
801</dd>
802
803<dt>Emulator:</dt>
804<dd>
805<ul>
806<li>Emulator now requires SD card to be 9MB or more.</li>
807</ul>
808</dd>
809
810<dt>Layoutopt:</dt>
811<dd>
812<ul>
813<li>Fixes <code>layoutopt.bat</code> to execute correctly on Windows.</li>
814</ul>
815</dd>
816</dl>
817 </div>
818</div>
819
820<div class="toggleable closed">
821  <a href="#" onclick="return toggleDiv(this)">
822        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
823SDK Tools, Revision 4</a> <em>(December 2009)</em>
824  <div class="toggleme">
825
826<dl>
827<dt>Dependencies:</dt>
828<dd><p>SDK Tools r4 is compatible with ADT 0.9.5 and later, but not
829compatible with earlier versions. If you are developing in Eclipse with ADT, you
830<strong>must</strong> update your ADT plugin to version 0.9.5 or higher if you
831install SDK Tools r4 in your SDK. </p></dd>
832
833<dt>General notes:</dt>
834<dd>
835<ul>
836<li>Launcher script now forces GDK_NATIVE_WINDOW=true (linux only), to fix a
837compatibility issue between GTK and SWT.</li>
838</ul>
839</dd>
840
841<dt>Android SDK and AVD Manager:</dt>
842<dd>
843<ul>
844<li>AVD Launch dialog now shows scale value.</li>
845<li>Fixes potential NPE in SDK Manager on AVD launch, for older AVD with no
846skin name specified.</li>
847<li>Fixes XML validation issue in on older Java versions.</li>
848<li>No longer forces the use of Java 1.5 on Mac OS X.</li>
849</ul>
850</dd>
851
852<dt>Emulator:</dt>
853<dd>
854<ul>
855<li>No longer limits the size of the system partition.</li>
856</ul>
857</dd>
858
859<dt>Ant build tools:</dt>
860<dd>
861<ul>
862<li>.apk packaging now properly ignores vi swap files as well as hidden files.</li>
863</ul>
864</dd>
865</dl>
866 </div>
867</div>
868
869<div class="toggleable closed">
870  <a href="#" onclick="return toggleDiv(this)">
871        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
872SDK Tools, Revision 3</a> <em>(October 2009)</em>
873  <div class="toggleme">
874
875<dl>
876<dt>Dependencies:</dt>
877<dd><p>SDK Tools r3 is compatible with ADT 0.9.4 and later, but not
878compatible with earlier versions. If you are developing in Eclipse with ADT, you
879<strong>must</strong> update your ADT plugin to version 0.9.4 or higher if you
880install SDK Tools r3 in your SDK.</p>
881</dd>
882
883<dt>Android tool:</dt>
884<dd>
885<ul>
886<li>Adds new <code>android create test-project</code> and <code>android update
887test-project</code> commands to allow for greater flexibility in the location of the
888main and test projects.</li>
889</ul>
890</dd>
891
892<dt>DDMS:</dt>
893<dd>
894<ul>
895<li>Adds a button to dump HPROF file for running applications (app must be able
896to write to the sdcard).</li>
897<li>Button to start/stop profiling of a running application (app must be able to
898write to the sdcard). Upon stop, Traceview will automatically be launched to
899display the trace.</li>
900<li>Fixed DDMS, Traceview, and the AVD Mananger/SDK Updater to run on Mac OS X
90110.6.</li>
902<li>Fixed screenshot support for devices running 32-bit framebuffer.</li>
903</ul>
904</dd>
905
906<dt>Android SDK and AVD Manager:</dt>
907<dd>
908<ul>
909<li>Provides a new UI that lets you set options for controlling
910the emulator skin, screen size/density, and scale factor used when launching
911an AVD.</li>
912<li>Provides improved AVD creation UI, which lets you customize the hardware
913properties of your AVDs.</li>
914<li>Now enforces dependencies between platforms and tools components, and
915between SDK add-ons and platforms.</li>
916</ul>
917</dd>
918
919<dt>Layoutopt, a new tool for optimizing layouts:</dt>
920
921<dd><p>The SDK Tools r3 package includes <code>layoutopt</code>, a new command-line
922tool that helps you optimize your layout hierarchies. When run against your
923layout files, the tool analyzes their hierarchies and notifies you of
924inefficiencies and other potential issues. The tool also provides simple
925solutions for the issues it finds. For usage, see <a
926href="/tools/help/layoutopt.html">layoutopt</a>.</p>
927</dd>
928</dl>
929 </div>
930</div>
931