1page.title=Tools Help 2@jd:body 3 4 5<p>The Android SDK includes a variety of tools that help you develop mobile 6applications for the Android platform. The tools are classified into two groups: SDK tools 7and platform tools. SDK tools are platform independent and are required no matter which 8Android platform you are developing on. Platform tools are customized to support the features of the 9latest Android platform.</p> 10 11 12<h2 id="tools-sdk">SDK Tools</h2> 13<p>The SDK tools are installed with the SDK starter package and are periodically updated. 14The SDK tools are required if you are developing Android applications. The most important SDK tools 15include the Android SDK Manager (<code>android sdk</code>), the AVD Manager (<code>android 16avd</code>) the emulator (<code>emulator</code>), and the Dalvik Debug Monitor Server 17(<code>ddms</code>). A short summary of some frequently-used SDK tools is provided below.</p> 18 19 20 21<h3 id="tools-virtual-device">Virtual Device Tools</h3> 22<dl> 23 24 <dt><a href="{@docRoot}tools/help/avd-manager.html">Android Virtual Device Manager</a></dt> 25 <dd>The AVD Manager provides a graphical user interface in which you can create 26 and manage Android Virtual Devices (AVDs) that run in the Android Emulator. </dd> 27 28 <dt><a href="{@docRoot}tools/help/emulator.html">Android Emulator (emulator)</a></dt> 29 <dd>A QEMU-based device-emulation tool that you can use to debug and test 30 your applications in an actual Android run-time environment.</dd> 31 32 <dt><a href="{@docRoot}tools/help/mksdcard.html">mksdcard</a></dt> 33 <dd>Helps you create a disk image that you can use with the emulator, to simulate the presence 34 of an external storage card (such as an SD card).</dd> 35 36</dl> 37 38 39 40 41<h3 id="tools-development">Development Tools</h3> 42<dl> 43 <dt><a href="{@docRoot}tools/help/android.html">android</a></dt> 44 <dd>Lets you manage AVDs, projects, and the installed components of the SDK.</dd> 45 46 <dt><a href="{@docRoot}tools/help/hierarchy-viewer.html">Hierarchy Viewer (hierarchyviewer)</a></dt> 47 <dd>Provides a visual representation of the layout's View hierarchy with performance information 48 for each node in the layout, and a magnified view of the display to closely examine the 49 pixels in your layout.</dd> 50 51 <dt><a href="{@docRoot}tools/help/lint.html">lint</a></dt> 52 <dd>The Android {@code lint} tool is a static code analysis tool that checks your Android 53 project source files for potential bugs and optimization improvements.</dd> 54 55 <dt><a href="{@docRoot}tools/help/sdk-manager.html">SDK Manager</a></dt> 56 <dd>Lets you manage SDK packages, such as installed platforms and system images.</dd> 57 58 <dt><a href="{@docRoot}tools/help/sqlite3.html">sqlite3</a></dt> 59 <dd>Lets you access the SQLite data files created and used by Android applications.</dd> 60 61</dl> 62 63 64 65<h3 id="tools-debugging">Debugging Tools</h3> 66<dl> 67 68 <dt><a href="{@docRoot}tools/help/adb.html">adb</a></dt> 69 <dd>Android Debug Bridge (adb) is a versatile command line tool that lets you communicate with 70 an emulator instance or connected Android-powered device. It also provides access to the 71 device shell.</dd> 72 73 <dt><a href="{@docRoot}tools/help/shell.html">ADB Shell Commands</a></dt> 74 <dd>Learn the commands available for advanced command-line operations.</dd> 75 76 <dt><a href="{@docRoot}tools/debugging/ddms.html">Dalvik Debug Monitor 77Server (ddms)</a></dt> 78 <dd>Lets you debug Android applications.</dd> 79 80 <dt><a href="{@docRoot}tools/help/monitor.html">Device Monitor</a></dt> 81 <dd>Android Device Monitor is a stand-alone tool that provides a graphical user interface for 82 several Android application debugging and analysis tools.</dd> 83 84 <dt><a href="{@docRoot}tools/help/dmtracedump.html">dmtracedump</a></dt> 85 <dd>Generates graphical call-stack diagrams from trace log files. The tool uses the 86Graphviz Dot utility to create the graphical output, so you need to install Graphviz before 87running <code>dmtracedump</code>. For more information on using <code>dmtracedump</code>, see <a 88href="{@docRoot}tools/debugging/debugging-tracing.html#dmtracedump">Profiling 89with Traceview and dmtracedump</a></dd> 90 91 92 <dt><a href="{@docRoot}tools/help/hprof-conv.html">hprof-conv</a></dt> 93 <dd>Converts the HPROF file that is generated by the Android SDK tools to a standard format so 94you can view the file in a profiling tool of your choice.</dd> 95 96 <dt><a href="{@docRoot}tools/help/systrace.html">Systrace</a></dt> 97 <dd>Lets you analyze the execution of your application in the context of system processes, 98 to help diagnose display and performance issues.</dd> 99 100 <dt><a href="{@docRoot}tools/help/traceview.html">traceview</a></dt> 101 <dd>Provides a graphical viewer for execution logs saved by your application.</dd> 102 103 <dt><a href="{@docRoot}tools/help/systrace.html">Systrace</a></dt> 104 <dd>Lets you analyze the execution of your application in the context of system processes, 105 to help diagnose display and performance issues.</dd> 106 107</dl> 108 109 110<h3 id="tools-build">Build Tools</h3> 111<dl> 112 113 <dt><a href="{@docRoot}tools/help/jobb.html">JOBB</a></dt> 114 <dd>Allows you to build encrypted and unencrypted 115 <a href="{@docRoot}google/play/expansion-files.html">APK expansion files</a> in Opaque 116 Binary Blob (OBB) format.</dd> 117 118 <dt><a href="{@docRoot}tools/help/proguard.html">ProGuard</a></dt> 119 <dd>Shrinks, optimizes, and obfuscates your code by removing unused code and renaming 120classes, fields, and methods with semantically obscure names.</dd> 121 122 <dt><a href="{@docRoot}tools/help/zipalign.html">zipalign</a></dt> 123 <dd>Optimizes <code>.apk</code> files by ensuring that all uncompressed data starts with a 124particular alignment relative to the start of the file. This should always be used to align .apk 125files after they have been signed.</dd> 126 127</dl> 128 129 130<h3 id="tools-image">Image Tools</h3> 131<dl> 132 <dt><a href="{@docRoot}tools/help/draw9patch.html">Draw 9-patch</a></dt> 133 <dd>Allows you to easily create a {@link android.graphics.NinePatch} graphic using a 134WYSIWYG editor. It also previews stretched versions of the image, and highlights the area in which 135content is allowed.</dd> 136 137 <dt><a href="{@docRoot}tools/help/etc1tool.html">etc1tool</a></dt> 138 <dd>A command line utility that lets you encode PNG images to the ETC1 compression standard and 139 decode ETC1 compressed images back to PNG.</dd> 140 141 <dt><a href="{@docRoot}tools/help/gltracer.html">Tracer for OpenGL ES</a></dt> 142 <dd>Allows you to capture OpenGL ES commands and frame by frame images to help you understand 143 how your graphics commands are being executed.</dd> 144 145</dl> 146 147 148 149<h2 id="tools-platform">Platform Tools</h2> 150 151<p>The platform tools are typically updated every time you install a new SDK platform. Each update 152of the platform tools is backward compatible with older platforms. Usually, you directly use only 153one of the platform tools—the <a href="adb.html">Android Debug Bridge (<code>adb</code>)</a>. 154Android Debug Bridge is a versatile tool that lets you manage the state of an emulator instance or 155Android-powered device. You can also use it to install an Android application (.apk) file on a 156device.</p> 157 158<p>The other platform tools, such as <a href="{@docRoot}guide/components/aidl.html">aidl</a>, 159<code>aapt</code>, <code>dexdump</code>, and <code>dx</code>, are typically called by the Android 160build tools or Android Development Tools (ADT), so you rarely need to invoke these tools directly. 161As a general rule, you should rely on the build tools or the ADT plugin to call them as needed.</p> 162 163<p class="note"><strong>Note:</strong> The Android SDK provides additional shell tools that can 164be accessed through <code>adb</code>, such as <a href="{@docRoot}tools/help/bmgr.html">bmgr</a> and 165<a href="{@docRoot}tools/help/logcat.html">logcat</a>.</p> 166<dl> 167 <dt><a href="{@docRoot}tools/help/bmgr.html">bmgr</a></dt> 168 <dd>A shell tool you can use to interact with the Backup Manager on Android devices supporting 169 API Level 8 or greater.</dd> 170 171 <dt><a href="{@docRoot}tools/help/logcat.html">logcat</a></dt> 172 <dd>Provides a mechanism for collecting and viewing system debug output.</dd> 173 174</dl> 175