blob: 549e093f2298f9723df3aef6e5ef1efb626e7314 [file] [log] [blame]
Scott Main9d8dd802009-04-21 19:17:59 -07001page.title=Developing In Eclipse, with ADT
The Android Open Source Project9066cfe2009-03-03 19:31:44 -08002@jd:body
3
Scott Main9d8dd802009-04-21 19:17:59 -07004<div id="qv-wrapper">
5 <div id="qv">
6 <h2>In this document</h2>
7 <ol>
8 <li><a href="#CreatingAProject">Creating an Android Project</a></li>
Scott Main01979992010-04-05 17:42:17 -07009 <li><a href="#AVD">Creating an AVD</a></li>
Scott Main9d8dd802009-04-21 19:17:59 -070010 <li><a href="#Running">Running Your Application</a>
11 <ol>
Scott Main01979992010-04-05 17:42:17 -070012 <li><a href="#RunningOnEmulator">Running on the emulator</a></li>
13 <li><a href="#RunningOnDevice">Running on a device</a></li>
Scott Main9d8dd802009-04-21 19:17:59 -070014 </ol>
15 </li>
16 <li><a href="#RunConfig">Creating a Custom Run Configuration</a></li>
17 <li><a href="#Signing">Setting Up Application Signing</a></li>
18 <li><a href="#Tips">Eclipse Tips</a></li>
19 </div>
20</div>
21
22
23<p>The Android Development Tools (ADT) plugin for Eclipse adds powerful extensions to the Eclipse
24integrated development environment. It allows you to create and debug Android applications easier
25and faster. If you use Eclipse, the ADT plugin gives you an incredible boost in developing Android
26applications:</p>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080027
28<ul>
Scott Main9d8dd802009-04-21 19:17:59 -070029 <li>It gives you access to other Android development tools from inside the Eclipse IDE. For
30example, ADT lets you access the many capabilities of the DDMS tool: take screenshots, manage
Scott Main01979992010-04-05 17:42:17 -070031port-forwarding, set breakpoints, and view thread and process information directly from
32Eclipse.</li>
Scott Main9d8dd802009-04-21 19:17:59 -070033 <li>It provides a New Project Wizard, which helps you quickly create and set up all of the
34basic files you'll need for a new Android application.</li>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080035 <li>It automates and simplifies the process of building your Android application.</li>
Scott Main9d8dd802009-04-21 19:17:59 -070036 <li>It provides an Android code editor that helps you write valid XML for your Android
37manifest and resource files.</li>
38 <li>It will even export your project into a signed APK, which can be distributed to users.</li>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080039</ul>
40
Scott Main9d8dd802009-04-21 19:17:59 -070041<p>To begin developing Android applications in the Eclipse IDE with ADT, you first need to
42download the Eclipse IDE and then download and install the ADT plugin. To do so, follow the
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070043steps given in <a href="{@docRoot}sdk/eclipse-adt.html#installing">Installing
Scott Main9d8dd802009-04-21 19:17:59 -070044the ADT Plugin</a>.</p>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080045
Scott Main9d8dd802009-04-21 19:17:59 -070046<p>If you are already developing applications using a version of ADT earlier than 0.9, make
47sure to upgrade to the latest version before continuing. See the guide to
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070048<a href="{@docRoot}sdk/eclipse-adt.html#updating">Updating Your ADT Plugin</a>.</p>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080049
Scott Main9d8dd802009-04-21 19:17:59 -070050<p class="note"><strong>Note:</strong> This guide assumes you are using the latest version of
Dirk Dougherty3f9de8b2009-05-22 16:04:18 -070051the ADT plugin. While most of the information covered also applies to previous
Scott Main9d8dd802009-04-21 19:17:59 -070052versions, if you are using an older version, you may want to consult this document from
53the set of documentation included in your SDK package (instead of the online version).</p>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080054
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080055
Scott Main9d8dd802009-04-21 19:17:59 -070056<h2 id="CreatingAProject">Creating an Android Project</h2>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080057
Scott Main9d8dd802009-04-21 19:17:59 -070058<p>The ADT plugin provides a New Project Wizard that you can use to quickly create a new
59Android project (or a project from existing code). To create a new project:</p>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080060
61<ol>
Scott Main9d8dd802009-04-21 19:17:59 -070062 <li>Select <strong>File</strong> &gt; <strong>New</strong> &gt; <strong>Project</strong>.</li>
63 <li>Select <strong>Android</strong> &gt; <strong>Android Project</strong>, and click
64 <strong>Next</strong>.</li>
65 <li>Select the contents for the project:
66 <ul>
67 <li>Enter a <em>Project Name</em>. This will be the name of the folder where your
68 project is created.</li>
69 <li>Under Contents, select <strong>Create new project in workspace</strong>.
70 Select your project workspace location.</li>
71 <li>Under Target, select an Android target to be used as the project's Build Target.
72 The Build Target
73 specifies which Android platform you'd like your application built against.
74 <p>Unless you know that you'll be using new APIs introduced in the latest SDK, you should
Scott Main01979992010-04-05 17:42:17 -070075 select a target with the lowest platform version possible.</p>
Scott Main9d8dd802009-04-21 19:17:59 -070076 <p class="note"><strong>Note:</strong> You can change your the Build Target for your
77 project at any time: Right-click the project in the Package Explorer, select
78 <strong>Properties</strong>, select <strong>Android</strong> and then check
79 the desired Project Target.</p>
80 </li>
81 <li>Under Properties, fill in all necessary fields.
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080082 <ul>
Scott Main9d8dd802009-04-21 19:17:59 -070083 <li>Enter an <em>Application name</em>. This is the human-readable title for your
84 application &mdash; the name that will appear on the Android device.</li>
85 <li>Enter a <em>Package name</em>. This is the package namespace (following the same rules
86 as for packages in the Java programming language) where all your source code
87 will reside.</li>
88 <li>Select <em>Create Activity</em> (optional, of course, but common) and enter a name
89 for your main Activity class.</li>
90 <li>Enter a <em>Min SDK Version</em>. This is an integer that indicates
91 the minimum API Level required to properly run your application.
92 Entering this here automatically sets the <code>minSdkVersion</code> attribute in the
93 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk&gt;</a>
Scott Main01979992010-04-05 17:42:17 -070094 of your Android Manifest file. If you're unsure of the appropriate <a
95href="{@docRoot}guide/appendix/api-levels.html">API Level</a> to use,
Scott Main9d8dd802009-04-21 19:17:59 -070096 copy the API Level listed for the Build Target you selected in the Target tab.</li>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080097 </ul>
Scott Main9d8dd802009-04-21 19:17:59 -070098 </li>
99 </ul>
100 </li>
101 <li>Click <strong>Finish</strong>.</li>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800102</ol>
103
Scott Main9d8dd802009-04-21 19:17:59 -0700104<p class="note"><strong>Tip:</strong>
105You can also start the New Project Wizard from the <em>New</em> icon in the toolbar.</p>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800106
Scott Main9d8dd802009-04-21 19:17:59 -0700107<p>Once you complete the New Project Wizard, ADT creates the following
108folders and files in your new project:</p>
109 <dl>
110 <dt><code>src/</code></dt>
111 <dd>Includes your stub Activity Java file. All other Java files for your application
112 go here.</dd>
113 <dt><code><em>&lt;Android Version&gt;</em>/</code> (e.g., <code>Android 1.1/</code>)</dt>
114 <dd>Includes the <code>android.jar</code> file that your application will build against.
115 This is determined by the build target that you have chosen in the <em>New Project
116 Wizard</em>.</dd>
117 <dt><code>gen/</code></dt>
118 <dd>This contains the Java files generated by ADT, such as your <code>R.java</code> file
119 and interfaces created from AIDL files.</dd>
120 <dt><code>assets/</code></dt>
121 <dd>This is empty. You can use it to store raw asset files. See
122 <a href="{@docRoot}guide/topics/resources/index.html">Resources and Assets</a>.</dd>
123 <dt><code>res/</code></dt>
124 <dd>A folder for your application resources, such as drawable files, layout files, string
125 values, etc. See
126 <a href="{@docRoot}guide/topics/resources/index.html">Resources and Assets</a>.</dd>
127 <dt><code>AndroidManifest.xml</code></dt>
128 <dd>The Android Manifest for your project. See
129 <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">The AndroidManifest.xml
130 File</a>.</dd>
131 <dt><code>default.properties</code></dt>
132 <dd>This file contains project settings, such as the build target. This files is integral
133 to the project, as such, it should be maintained in a Source Revision Control system.
134 It should never be edited manually &mdash; to edit project properties,
135 right-click the project folder and select "Properties".</dd>
136 </dl>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800137
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800138
Scott Main01979992010-04-05 17:42:17 -0700139<h2 id="AVD">Creating an AVD</h2>
Scott Main9d8dd802009-04-21 19:17:59 -0700140
Scott Main01979992010-04-05 17:42:17 -0700141<p>An Android Virtual Device (AVD) is a device configuration for the emulator that
142allows you to model real world devices. In order to run an instance of the emulator, you must create
143an AVD.</p>
Scott Main9d8dd802009-04-21 19:17:59 -0700144
Scott Main01979992010-04-05 17:42:17 -0700145<p>To create an AVD from Eclipse:</p>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800146
147<ol>
Scott Main01979992010-04-05 17:42:17 -0700148 <li>Select <strong>Window > Android SDK and AVD Manager</strong>, or click the Android SDK and
149AVD Manager icon in the Eclipse toolbar.</p>
Scott Main9d8dd802009-04-21 19:17:59 -0700150 </li>
Scott Main01979992010-04-05 17:42:17 -0700151 <li>In the <em>Virtual Devices</em> panel, you'll see a list of existing AVDs. Click
152<strong>New</strong> to create a new AVD.</li>
153 <li>Fill in the details for the AVD.
154 <p>Give it a name, a platform target, an SD card size, and
Scott Main75f7a262009-08-05 19:31:00 -0700155 a skin (HVGA is default).</p>
Scott Main01979992010-04-05 17:42:17 -0700156 <p class="note"><strong>Note:</strong> Be sure to define
157 a target for your AVD that satisfies your application's Build Target (the AVD
158 platform target must have an API Level equal to or greater than the API Level that your
159application compiles against).</p>
Scott Main9d8dd802009-04-21 19:17:59 -0700160 </li>
Scott Main75f7a262009-08-05 19:31:00 -0700161 <li>Click <strong>Create AVD</strong>.</li>
Scott Main9d8dd802009-04-21 19:17:59 -0700162</ol>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800163
Scott Main01979992010-04-05 17:42:17 -0700164<p>Your AVD is now ready and you can either close the SDK and AVD Manager, create more AVDs, or
165launch an emulator with the AVD by selecting a device and clicking <strong>Start</strong>.</p>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800166
Scott Main01979992010-04-05 17:42:17 -0700167<p>For more information about AVDs, read the
Scott Main8a4c53a2009-04-24 13:41:44 -0700168<a href="{@docRoot}guide/developing/tools/avd.html">Android Virtual Devices</a>
169documentation.</p>
Scott Main9d8dd802009-04-21 19:17:59 -0700170
171
Scott Main01979992010-04-05 17:42:17 -0700172<h2 id="Running">Running Your Application</h2>
Scott Main9d8dd802009-04-21 19:17:59 -0700173
Scott Main01979992010-04-05 17:42:17 -0700174<div class="sidebox-wrapper">
175<div class="sidebox">
176<h2>Use the Emulator to Test Different Configurations</h2>
177<p>Create multiple AVDs that each define a different device configuration with which your
178application is compatible, then launch each AVD into a new emulator from the SDK and AVD Manager.
179Set the target mode in your app's run configuration to manual, so that when you run your
180application, you can select from the available virtual devices.</p>
181</div>
182</div>
Scott Main9d8dd802009-04-21 19:17:59 -0700183
Scott Main01979992010-04-05 17:42:17 -0700184<p>Running your application from Eclipse will usually require just a couple clicks, whether you're
185running it on the emulator or on an attached device. The information below describes how to get
186set up and run your application from Eclipse.</p>
Scott Main9d8dd802009-04-21 19:17:59 -0700187
Scott Main01979992010-04-05 17:42:17 -0700188<h3 id="RunningOnEmulator">Running on the emulator</h3>
189
190<p>Before you can run your application on the Android Emulator,
191you <strong>must</strong> <a href="#AVD">create an AVD</a>.</p>
192
193<p>To run (or debug) your application, select <strong>Run</strong> &gt; <strong>Run</strong> (or
194<strong>Run</strong> &gt; <strong>Debug</strong>) from the Eclipse menu bar. The ADT plugin
195will automatically create a default launch configuration for the project. Eclipse will then perform
196the following:</p>
Scott Main9d8dd802009-04-21 19:17:59 -0700197
198<ol>
199 <li>Compile the project (if there have been changes since the last build).</li>
Scott Main01979992010-04-05 17:42:17 -0700200 <li>Create a default launch configuration (if one does not already exist for the
201project).</li>
202 <li>Install and start the application on an emulator (or device), based on the Deployment
203Target
204 defined by the run configuration.
205 <p>By default, Android run configurations use an "automatic target" mode for
206 selecting a device target. For information on how automatic target mode selects a
207 deployment target, see <a href="#AutoAndManualTargetModes">Automatic and manual
Scott Main9d8dd802009-04-21 19:17:59 -0700208 target modes</a> below.</p>
209 </li>
210</ol>
211
Scott Main01979992010-04-05 17:42:17 -0700212<p>If debugging, the application will start in the "Waiting For Debugger" mode. Once the
Scott Main9d8dd802009-04-21 19:17:59 -0700213debugger is attached, Eclipse will open the Debug perspective.</p>
214
Scott Main01979992010-04-05 17:42:17 -0700215<p>To set or change the launch configuration used for your project, use the launch configuration
216manager.
Scott Main9d8dd802009-04-21 19:17:59 -0700217See <a href="#launchconfig">Creating a Launch Configuration</a> for information.</p>
218
Scott Main01979992010-04-05 17:42:17 -0700219<p>Be certain to create multiple AVDs upon which to test your application. You should have one AVD
220for each platform and screen type with which your application is compatible. For
221instance, if your application compiles against the Android 1.5 (API Level 3) platform, you should
222create an AVD for each platform equal to and greater than 1.5 and an AVD for each <a
223href="{@docRoot}guide/practices/screens_support.html">screen type</a> you support, then test
224your application on each one.</p>
225
226
227<h3 id="RunningOnDevice">Running on a device</h3>
228
229<p>Before you can run your application on a device, you must perform some basic setup for your
230device:</p>
231
232<ul>
233 <li>Declare your application as debuggable in your manifest</li>
234 <li>Enable USB Debugging on your device</li>
235 <li>Ensure that your development computer can detect your device when connected via USB</li>
236</ul>
237<p>Read <a href="{@docRoot}guide/developing/device.html#setting-up">Setting up a Device for
238Development</a> for more information.</p>
239
240<p>Once set up and your device is connected via USB, install your application on the device by
241selecting <strong>Run</strong> &gt; <strong>Run</strong> (or
242<strong>Run</strong> &gt; <strong>Debug</strong>) from the Eclipse menu bar.</p>
243
244
Scott Main9d8dd802009-04-21 19:17:59 -0700245
246<h2 id="RunConfig">Creating a Run Configuration</h2>
247
248<p>The run configuration specifies the project to run, the Activity
Scott Main01979992010-04-05 17:42:17 -0700249to start, the emulator or connected device to use, and so on. When you first run a project
Scott Main9d8dd802009-04-21 19:17:59 -0700250as an <em>Android Application</em>, ADT will automatically create a run configuration.
251The default run configuration will
252launch the default project Activity and use automatic target mode for device selection
Dirk Doughertya6602f12009-08-27 16:26:43 -0700253(with no preferred AVD). If the default settings don't suit your project, you can
Scott Main9d8dd802009-04-21 19:17:59 -0700254customize the launch configuration or even create a new.</p>
255
256<p>To create or modify a launch configuration, follow these steps as appropriate
257for your Eclipse version:</p>
258
259<ol>
260 <li>Open the run configuration manager.
261 <ul>
262 <li>In Eclipse 3.3 (Europa), select <strong>Run</strong> &gt;
263 <strong>Open Run Dialog</strong> (or <strong>Open Debug Dialog</strong>)
264 </li>
265 <li>In Eclipse 3.4 (Ganymede), select <strong>Run </strong>&gt;
266 <strong>Run Configurations</strong> (or
267 <strong>Debug Configurations</strong>)
268 </li>
269 </ul>
270 </li>
271 <li>Expand the <strong>Android Application</strong> item and create a new
272 configuration or open an existing one.
273 <ul>
274 <li>To create a new configuration:
275 <ol>
Scott Main01979992010-04-05 17:42:17 -0700276 <li>Select <strong>Android Application</strong> and click the <em>New launch
277configuration</em>
Scott Main9d8dd802009-04-21 19:17:59 -0700278 icon above the list (or, right-click <strong>Android Application</strong> and click
279 <strong>New</strong>).</li>
280 <li>Enter a Name for your configuration.</li>
281 <li>In the Android tab, browse and select the project you'd like to run with the
282 configuration.</li>
283 </ol>
284 <li>To open an existing configuration, select the configuration name from the list
285 nested below <strong>Android Application</strong>.</li>
286 </ul>
287 </li>
288 <li>Adjust your desired launch configuration settings.
289 <p>In the Target tab, consider whether you'd like to use Manual or Automatic mode
290 when selecting an AVD to run your application.
291 See the following section on <a href=#AutoAndManualModes">Automatic and manual target
292 modes</a>).</p>
Dirk Doughertya6602f12009-08-27 16:26:43 -0700293 <p>You can specify any emulator options to the Additional Emulator Command
294 Line Options field. For example, you could add <code>-scale 96dpi</code> to
295 scale the AVD's screen to an accurate size, based on the dpi of your
296 computer monitor. For a full list of emulator options, see the <a
297 href="{@docRoot}guide/developing/tools/emulator.html">Android Emulator</a>
298document.</p>
Scott Main9d8dd802009-04-21 19:17:59 -0700299 </li>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800300</ol>
301
302
Scott Main9d8dd802009-04-21 19:17:59 -0700303<h3 id="AutoAndManualTargetModes">Automatic and manual target modes</h3>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800304
Scott Main01979992010-04-05 17:42:17 -0700305<p>By default, a run configuration uses the <strong>automatic</strong> target mode in order to
306select
Scott Main9d8dd802009-04-21 19:17:59 -0700307an AVD. In this mode, ADT will select an AVD for the application in the following manner:</p>
308
309<ol>
310 <li>If there's a device or emulator already running and its AVD configuration
311 meets the requirements of the application's build target, the application is installed
312 and run upon it.</li>
313 <li>If there's more than one device or emulator running, each of which meets the requirements
314 of the build target, a "device chooser" is shown to let you select which device to use.</li>
315 <li>If there are no devices or emulators running that meet the requirements of the build target,
316 ADT looks at the available AVDs. If one meets the requirements of the build target,
317 the AVD is used to launch a new emulator, upon which the application is installed and run.</li>
318 <li>If all else fails, the application will not be run and you will see a console error warning
319 you that there is no existing AVD that meets the build target requirements.</li>
320</ol>
321
322<p>However, if a "preferred AVD" is selected in the run configuration, then the application
323will <em>always</em> be deployed to that AVD. If it's not already running, then a new emulator
324will be launched.</p>
325
326<p>If your run configuration uses <strong>manual</strong> mode, then the "device chooser"
327is presented every time that your application is run, so that you can select which AVD to use.</p>
328
329
330<h2 id="Signing">Signing your Applications</h2>
331
332<p>As you begin developing Android applications, understand that all
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800333Android applications must be digitally signed before the system will install
Scott Main9d8dd802009-04-21 19:17:59 -0700334them on an emulator or an actual device. There are two ways to do this:
335with a debug key (for immediate testing on an emulator or development device)
336or with a private key (for application distribution).</p>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800337
338<p>The ADT plugin helps you get started quickly by signing your .apk files with
Scott Main9d8dd802009-04-21 19:17:59 -0700339a debug key, prior to installing them on an emulator or development device. This means that you can
340quickly run your application from Eclipse without having to
341generate your own private key. No specific action on your part is needed,
342provided ADT has access to Keytool.However, please note that if you intend
343to publish your application, you <strong>must</strong> sign the application with your
344own private key, rather than the debug key generated by the SDK tools.</p>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800345
Scott Main9d8dd802009-04-21 19:17:59 -0700346<p>Please read <a href="{@docRoot}guide/publishing/app-signing.html">Signing Your
347Applications</a>, which provides a thorough guide to application signing on Android
348and what it means to you as an Android application developer. The document also includes
349a guide to exporting and signing your application with the ADT's Export Wizard.</p>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800350
351
Scott Main9d8dd802009-04-21 19:17:59 -0700352<h2 id="Tips">Eclipse Tips </h2>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800353
Scott Main9d8dd802009-04-21 19:17:59 -0700354<h3 id="arbitraryexpressions">Executing arbitrary Java expressions in Eclipse</h3>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800355
Scott Main9d8dd802009-04-21 19:17:59 -0700356<p>You can execute arbitrary code when paused at a breakpoint in Eclipse. For example,
357 when in a function with a String argument called &quot;zip&quot;, you can get
358 information about packages and call class methods. You can also invoke arbitrary
359 static methods: for example, entering <code>android.os.Debug.startMethodTracing()</code> will
360 start dmTrace. </p>
Scott Main01979992010-04-05 17:42:17 -0700361<p>Open a code execution window, select <strong>Window</strong> &gt; <strong>Show
362 View</strong> &gt; <strong>Display</strong> from the main menu to open the
Scott Main9d8dd802009-04-21 19:17:59 -0700363 Display window, a simple text editor. Type your expression, highlight the
364 text, and click the 'J' icon (or CTRL + SHIFT + D) to run your
365 code. The code runs in the context of the selected thread, which must be
366 stopped at a breakpoint or single-step point. (If you suspend the thread
367 manually, you have to single-step once; this doesn't work if the thread is
368 in Object.wait().)</p>
369<p>If you are currently paused on a breakpoint, you can simply highlight and execute
370 a piece of source code by pressing CTRL + SHIFT + D. </p>
371<p>You can highlight a block of text within the same scope by pressing ALT +SHIFT
372 + UP ARROW to select larger and larger enclosing blocks, or DOWN ARROW to select
373 smaller blocks. </p>
374<p>Here are a few sample inputs and responses in Eclipse using the Display window.</p>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800375
Scott Main9d8dd802009-04-21 19:17:59 -0700376<table width="100%" border="1">
377 <tr>
378 <th scope="col">Input</th>
379 <th scope="col">Response</th>
380 </tr>
381 <tr>
382 <td><code>zip</code></td>
383 <td><code>(java.lang.String)
384 /work/device/out/linux-x86-debug/android/app/android_sdk.zip</code></td>
385 </tr>
386 <tr>
387 <td><code>zip.endsWith(&quot;.zip&quot;)</code></td>
388 <td><code>(boolean) true</code></td>
389 </tr>
390 <tr>
391 <td><code>zip.endsWith(&quot;.jar&quot;)</code></td>
392 <td><code>(boolean) false</code></td>
393 </tr>
394</table>
395<p>You can also execute arbitrary code when not debugging by using a scrapbook page.
396 Search the Eclipse documentation for &quot;scrapbook&quot;.</p>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800397
398
Scott Main9d8dd802009-04-21 19:17:59 -0700399<h3>Running DDMS Manually</h3>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800400
Scott Main9d8dd802009-04-21 19:17:59 -0700401<p>Although the recommended way to debug is to use the ADT plugin, you can manually run
402DDMS and configure Eclipse to debug on port 8700. (<strong>Note: </strong>Be sure that you
403have first started <a href="{@docRoot}guide/developing/tools/ddms.html">DDMS</a>). </p>
404
405
406<!-- TODO: clean this up and expand it to cover more wizards and features
407<h3>ADT Wizards</h3>
408
409<p>Notice that the "New Android Project" wizard has been expanded to use the multi-platform
410capabilities of the new SDK.</p>
411
412<p>There is now a "New XML File" wizard that lets you create skeleton XML resource
413files for your Android projects. This makes it easier to create a new layout, a new menu, a
414new strings file, etc.</p>
415
416<p>Both wizards are available via <strong>File > New</strong> and new icons in the main
417Eclipse toolbar (located to the left of the Debug and Run icons).
418If you do not see the new icons, you may need to select <strong>Window > Reset
419Perspective</strong> from the Java perspective.</p>
420-->