1 page.title=Running Your App 2 parent.title=Building Your First App 3 parent.link=index.html 4 5 trainingnavtop=true 6 previous.title=Creating a Project 7 previous.link=creating-project.html 8 next.title=Building a Simple User Interface 9 next.link=building-ui.html 10 11 @jd:body 12 13 14 <!-- This is the training bar --> 15 <div id="tb-wrapper"> 16 <div id="tb"> 17 18 <h2>This lesson teaches you to</h2> 19 20 <ol> 21 <li><a href="#RealDevice">Run on a Real Device</a></li> 22 <li><a href="#Emulator">Run on the Emulator</a></li> 23 </ol> 24 25 <h2>You should also read</h2> 26 27 <ul> 28 <li><a href="{@docRoot}tools/device.html">Using Hardware Devices</a></li> 29 <li><a href="{@docRoot}tools/devices/index.html">Managing Virtual Devices</a></li> 30 <li><a href="{@docRoot}tools/projects/index.html">Managing Projects</a></li> 31 </ul> 32 33 34 </div> 35 </div> 36 37 38 <p>If you followed the <a href="creating-project.html">previous lesson</a> to create an 39 Android project, it includes a default set of "Hello World" source files that allow you to 40 run the app right away.</p> 41 42 <p>How you run your app depends on two things: whether you have a real Android-powered device and 43 whether youre using Eclipse. This lesson shows you how to install and run your app on a 44 real device and on the Android emulator, and in both cases with either Eclipse or the command line 45 tools.</p> 46 47 <p>Before you run your app, you should be aware of a few directories and files in the Android 48 project:</p> 49 50 <dl> 51 <dt><code>AndroidManifest.xml</code></dt> 52 <dd>This manifest file describes the fundamental characteristics of the app and defines each of 53 its components. You'll learn about various declarations in this file as you read more training 54 classes.</dd> 55 <dt><code>src/</code></dt> 56 <dd>Directory for your app's main source files. By default, it includes an {@link 57 android.app.Activity} class that runs when your app is launched using the app icon.</dd> 58 <dt><code>res/</code></dt> 59 <dd>Contains several sub-directories for app resources. Here are just a few: 60 <dl style="margin-top:1em"> 61 <dt><code>drawable-hdpi/</code></dt> 62 <dd>Directory for drawable objects (such as bitmaps) that are designed for high-density 63 (hdpi) screens. Other drawable directories contain assets designed for other screen densities.</dd> 64 <dt><code>layout/</code></dt> 65 <dd>Directory for files that define your app's user interface.</dd> 66 <dt><code>values/</code></dt> 67 <dd>Directory for other various XML files that contain a collection of resources, such as 68 string and color definitions.</dd> 69 </dl> 70 </dd> 71 </dl> 72 73 <p>When you build and run the default Android project, the default {@link android.app.Activity} 74 class in the <code>src/</code> directory starts and loads a layout file from the 75 <code>layout/</code> directory, which includes a "Hello World" message. Not real exciting, but it's 76 important that you understand how to build and run your app before adding real functionality to 77 the app.</p> 78 79 80 81 <h2 id="RealDevice">Run on a Real Device</h2> 82 83 <p>Whether youre using Eclipse or the command line, you need to:</p> 84 85 <ol> 86 <li>Plug in your Android-powered device to your machine with a USB cable. 87 If youre developing on Windows, you might need to install the appropriate USB driver for your 88 device. For help installing drivers, see the <a href="{@docRoot}tools/extras/oem-usb.html">OEM USB 89 Drivers</a> document.</li> 90 <li>Ensure that <strong>USB debugging</strong> is enabled in the device Settings (open Settings 91 and navitage to <strong>Applications > Development</strong> on most devices, or select 92 <strong>Developer options</strong> on Android 4.0 and higher).</li> 93 </ol> 94 95 <p>To run the app from Eclipse, open one of your project's files and click 96 <strong>Run</strong> from the toolbar. Eclipse installs the app on your connected device and starts 97 it.</p> 98 99 100 <p>Or to run your app from a command line:</p> 101 102 <ol> 103 <li>Change directories to the root of your Android project and execute: 104 <pre class="no-pretty-print">ant debug</pre></li> 105 <li>Make sure the Android SDK <code>platform-tools/</code> directory is included in your 106 <code>PATH</code> environment variable, then execute: 107 <pre class="no-pretty-print">adb install bin/MyFirstApp-debug.apk</pre></li> 108 <li>On your device, locate <em>MyFirstActivity</em> and open it.</li> 109 </ol> 110 111 <p>To start adding stuff to the app, continue to the <a href="building-ui.html">next 112 lesson</a>.</p> 113 114 115 116 <h2 id="Emulator">Run on the Emulator</h2> 117 118 <p>Whether youre using Eclipse or the command line, you need to first create an <a 119 href="{@docRoot}tools/devices/index.html">Android Virtual 120 Device</a> (AVD). An AVD is a 121 device configuration for the Android emulator that allows you to model 122 different device configurations.</p> 123 124 <div class="figure" style="width:457px"> 125 <img src="{@docRoot}images/screens_support/avds-config.png" alt="" /> 126 <p class="img-caption"><strong>Figure 1.</strong> The AVD Manager showing a few virtual 127 devices.</p> 128 </div> 129 130 <p>To create an AVD:</p> 131 <ol> 132 <li>Launch the Android Virtual Device Manager: 133 <ol type="a"> 134 <li>In Eclipse, select <strong>Window > AVD Manager</strong>, or click the <em>AVD 135 Manager</em> icon in the Eclipse toolbar.</li> 136 <li>From the command line, change directories to <code><sdk>/tools/</code> and execute: 137 <pre class="no-pretty-print">./android avd</pre></li> 138 </ol> 139 </li> 140 <li>In the <em>Android Virtual Device Device Manager</em> panel, click <strong>New</strong>.</li> 141 <li>Fill in the details for the AVD. 142 Give it a name, a platform target, an SD card size, and a skin (HVGA is default).</li> 143 <li>Click <strong>Create AVD</strong>.</li> 144 <li>Select the new AVD from the <em>Android Virtual Device Manager</em> and click 145 <strong>Start</strong>.</li> 146 <li>After the emulator boots up, unlock the emulator screen.</li> 147 </ol> 148 149 <p>To run the app from Eclipse, open one of your project's files and click 150 <strong>Run</strong> from the toolbar. Eclipse installs the app on your AVD and starts it.</p> 151 152 153 <p>Or to run your app from the command line:</p> 154 155 <ol> 156 <li>Change directories to the root of your Android project and execute: 157 <pre class="no-pretty-print">ant debug</pre></li> 158 <li>Make sure the Android SDK <code>platform-tools/</code> directory is included in your 159 <code>PATH</code> environment 160 variable, then execute: 161 <pre class="no-pretty-print">adb install bin/MyFirstApp-debug.apk</pre></li> 162 <li>On the emulator, locate <em>MyFirstActivity</em> and open it.</li> 163 </ol> 164 165 166 <p>To start adding stuff to the app, continue to the <a href="building-ui.html">next 167 lesson</a>.</p> 168 169 170 171 172 173 174 175 176 177 178 179