blob: c3b103f938b3842af7b3cea95ce442c741a7128b [file] [log] [blame]
Dirk Dougherty7b229ef2010-03-26 17:32:26 -07001page.title=Installing the SDK
Dirk Doughertyee58d1b2009-10-16 15:25:15 -07002sdk.preview=0
3
4@jd:body
5
6<div id="qv-wrapper">
7<div id="qv">
8
9 <h2>In this document</h2>
10 <ol>
Scott Main081127b2010-10-29 15:56:27 -070011 <li><a href="#Preparing">1. Preparing Your Development Computer</a></li>
12 <li><a href="#Installing">2. Downloading the SDK Starter Package</a></li>
13 <li><a href="#InstallingADT">3. Installing the ADT Plugin for Eclipse</a></li>
14 <li><a href="#components">4. Adding Platforms and Other Components</a>
Dirk Dougherty7b229ef2010-03-26 17:32:26 -070015 <ol>
16 <li><a href="#which">Which components do I need?</a></li>
17 </ol></li>
18 <li><a href="#sdkContents">Exploring the SDK</a></li>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070019 <li><a href="#NextSteps">Next Steps</a></li>
20 <li><a href="#troubleshooting">Troubleshooting</a></li>
21 </ol>
22
23<h2>See also</h2>
24 <ol>
Dirk Dougherty7b229ef2010-03-26 17:32:26 -070025 <li><a href="{@docRoot}sdk/eclipse-adt.html">ADT Plugin for Eclipse</a></li>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070026 <li><a href="{@docRoot}sdk/adding-components.html">Adding SDK Components</a></li>
27 </ol>
28
29</div>
30</div>
31
Scott Main06cf15e2010-10-28 00:02:31 -070032<p>This page describes how to install the Android SDK
Dirk Doughertya374f512009-11-09 11:41:09 -080033and set up your development environment for the first time.</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070034
Scott Main06cf15e2010-10-28 00:02:31 -070035<p>If you encounter any problems during installation, see the
Dirk Doughertya250f0c2009-10-22 18:02:45 -070036<a href="#troubleshooting">Troubleshooting</a> section at the bottom of
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070037this page.</p>
38
39<h4>Updating?</h4>
40
Scott Main081127b2010-10-29 15:56:27 -070041<p>If you already have an Android SDK, use the <em>Android SDK and AVD Manager</em> tool to install
42updated tools and new Android platforms into your existing environment. For information about how to
43do that, see <a href="{@docRoot}sdk/adding-components.html">Adding SDK Components</a></p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070044
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070045
Dirk Dougherty7b229ef2010-03-26 17:32:26 -070046<h2 id="Preparing">Step 1. Preparing Your Development Computer</h2>
47
48<p>Before getting started with the Android SDK, take a moment to confirm that
49your development computer meets the <a href="requirements.html">System
Scott Main081127b2010-10-29 15:56:27 -070050Requirements</a>. In particular, you might need to install the <a
51href="http://java.sun.com/javase/downloads/index.jsp">JDK</a>, if you don't have it already. </p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070052
53<p>If you will be developing in Eclipse with the Android Development
Scott Main081127b2010-10-29 15:56:27 -070054Tools (ADT) Plugin&mdash;the recommended path if you are new to
55Android&mdash;make sure that you have a suitable version of Eclipse
Scott Main06cf15e2010-10-28 00:02:31 -070056installed on your computer (3.4 or newer is recommended). If you need
57to install Eclipse, you can download it from this location: </p>
58
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070059<p style="margin-left:2em;"><a href=
Scott Main06cf15e2010-10-28 00:02:31 -070060"http://www.eclipse.org/downloads/">http://www.eclipse.org/downloads/</a></p>
61
Scott Main081127b2010-10-29 15:56:27 -070062<p>For Eclipse 3.5 or newer, the "Eclipse Classic" version is recommended. Otherwise, a Java or
63RCP version of Eclipse is recommended.</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070064
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070065
Dirk Dougherty7b229ef2010-03-26 17:32:26 -070066<h2 id="Installing">Step 2. Downloading the SDK Starter Package</h2>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070067
Dirk Dougherty7b229ef2010-03-26 17:32:26 -070068<p>The first step in setting up your environment for developing Android applications
Scott Main081127b2010-10-29 15:56:27 -070069is downloading the Android SDK starter package.</p>
Dirk Dougherty7b229ef2010-03-26 17:32:26 -070070
Scott Main081127b2010-10-29 15:56:27 -070071<p>The starter package is not a full
72development environment&mdash;it includes only the core SDK Tools, which you can
73use to download the rest of the SDK components (such as the platform system images). </p>
Dirk Dougherty7b229ef2010-03-26 17:32:26 -070074
Scott Main06cf15e2010-10-28 00:02:31 -070075<p class="note"><strong>Note:</strong> If you're using Windows, we recommend that you download
76the SDK installer (the {@code .exe} file from the download table). It will guide you through the
77installation process and check your computer for the required software.</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070078
Scott Main081127b2010-10-29 15:56:27 -070079<p>You can get the latest version of the SDK starter package from the <a
80href="{@docRoot}sdk/index.html">SDK download page</a>.</p>
81
82<p>If you downloaded a {@code .zip} or {@code .tgz} package (instead of the SDK installer), unpack
83it to a safe location on your machine. By default, the SDK files are unpacked
84into a directory named <code>android-sdk-&lt;machine-platform&gt;</code>.</p>
Scott Main06cf15e2010-10-28 00:02:31 -070085
86<p>Make a note of the name and
Scott Main081127b2010-10-29 15:56:27 -070087location of the unpacked SDK directory on your system&mdash;you will need to
Scott Main06cf15e2010-10-28 00:02:31 -070088refer to the SDK directory later, when setting up the ADT plugin and when using
89the SDK tools from command line.</p>
90
Scott Main081127b2010-10-29 15:56:27 -070091<p>Optionally, you might want to add the location of the SDK's
92<code>tools/</code> directory and {@code platform-tools/} directory to your system
Scott Main06cf15e2010-10-28 00:02:31 -070093<code>PATH</code>. Both tool directories are located at the root of the SDK folder. Adding
94<code>tools/</code> and {@code platform-tools/} to your path lets you run Android Debug Bridge (adb)
95and the other command line <a
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070096href="{@docRoot}guide/developing/tools/index.html">tools</a> without needing to
Scott Main06cf15e2010-10-28 00:02:31 -070097supply the full path to the tool directories. </p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070098
99<ul>
100 <li>On Linux, edit your <code>~/.bash_profile</code> or <code>~/.bashrc</code> file. Look
101 for a line that sets the PATH environment variable and add the
Scott Main06cf15e2010-10-28 00:02:31 -0700102 full path to the <code>tools/</code> and {@code platform-tools/} directories to it. If you don't
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700103 see a line setting the path, you can add one:</li>
104
Scott Main06cf15e2010-10-28 00:02:31 -0700105 <ul><code>export PATH=${PATH}:&lt;your_sdk_dir&gt;/tools:&lt;your_sdk_dir&gt;/platform-tools</code></ul>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700106
107 <li>On a Mac OS X, look in your home directory for <code>.bash_profile</code> and
Scott Main06cf15e2010-10-28 00:02:31 -0700108 proceed as for Linux. You can create the <code>.bash_profile</code> if
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700109 you haven't already set one up on your machine. </li>
110
Scott Main06cf15e2010-10-28 00:02:31 -0700111 <li>On Windows, right-click on My Computer, and select Properties.
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700112 Under the Advanced tab, hit the Environment Variables button, and in the
Scott Main06cf15e2010-10-28 00:02:31 -0700113 dialog that comes up, double-click on Path (under System Variables). Add the full path to the
114 <code>tools/</code> and {@code platform-tools/} directories to the path. </li>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700115 </ul>
116
Scott Main081127b2010-10-29 15:56:27 -0700117<p>If you will be using the Eclipse IDE, the
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700118next section describes how to install the Android Development Tools (ADT) plugin
119and set up Eclipse. If you choose not to use Eclipse, you can develop Android
120applications in an IDE of your choice and then compile, debug and deploy using
121the tools included in the SDK (skip to <a href="#components">Adding Platforms
122and Other Components</a>).</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700123
124
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700125<h2 id="InstallingADT">Step 3. Installing the ADT Plugin for Eclipse</h2>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700126
127<p>Android offers a custom plugin for the Eclipse IDE, called Android
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700128Development Tools (ADT), that is designed to give you a powerful, integrated
129environment in which to build Android applications. It extends the capabilites
130of Eclipse to let you quickly set up new Android projects, create an application
Scott Main081127b2010-10-29 15:56:27 -0700131UI, debug your applications
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700132using the Android SDK tools, and even export signed (or unsigned) APKs in order
133to distribute your application. In general, developing in Eclipse with ADT is a
134highly recommended approach and is the fastest way to get started with Android.
135</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700136
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700137<p>If you'd like to use ADT for developing Android applications, install it now.
Scott Main081127b2010-10-29 15:56:27 -0700138Read <a href="{@docRoot}sdk/eclipse-adt.html#installing">Installing the ADT Plugin</a> for
139step-by-step installation instructions, then return here to continue the
140last step in setting up your Android SDK.</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700141
142<p>If you prefer to work in an IDE other than Eclipse, you do not need to
143install Eclipse or ADT, instead, you can directly use the SDK tools to build and
Dirk Doughertyeeb0b252009-10-22 16:08:32 -0700144debug your application.</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700145
Dirk Doughertybf15ce62009-10-23 19:17:12 -0700146
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700147<h2 id="components">Step 4. Adding Android Platforms and Other Components</h2>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700148
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700149<div class="sidebox-wrapper" style="margin-right:2.5em;">
150<div class="sidebox"> <h2>Using the Android SDK and AVD Manager</h2>
Dirk Doughertybf15ce62009-10-23 19:17:12 -0700151
Scott Main081127b2010-10-29 15:56:27 -0700152<p>The <em>Android SDK and AVD Manager</em> is a tool that you will use often
153to add components to your SDK environment and manage <a
154href="{@docRoot}guide/developing/tools/avd.html">Android Virtual Devices</a>.
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700155</p>
156
Scott Main081127b2010-10-29 15:56:27 -0700157<p>See <a
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700158href="adding-components.html">Adding SDK Components</a> for details on how to
159launch and use the tool.</p>
Dirk Doughertybf15ce62009-10-23 19:17:12 -0700160</div>
161</div>
162
Scott Main081127b2010-10-29 15:56:27 -0700163<p>The last step in setting up your SDK is using the <em>Android SDK and AVD Manager</em> (a
164tool included in the SDK starter package) to download
165essential SDK components into your development environment.</p>
Dirk Doughertybf15ce62009-10-23 19:17:12 -0700166
Scott Main081127b2010-10-29 15:56:27 -0700167<p>The SDK uses a modular structure that separates the major parts of the SDK&mdash;Android platform
168versions, add-ons, tools, samples, and documentation&mdash;into a set of separately installable
169components. The SDK starter package, which you've already downloaded, includes only a single
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700170component: the latest version of the SDK Tools. To develop any Android
171application, you also need to download at least one Android platform into your
172environment, although downloading additional components is highly recommended.
173See <a href="#which">Which components do I need?</a> for information about
174which components are required and which are optional.</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700175
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700176<p>The SDK repository offers these types of components:</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700177
178<ul>
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700179<li><strong>SDK Tools</strong> (pre-installed in the Android SDK starter
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700180package) &mdash; Contains the full set of SDK tools for developing, debugging,
181and testing your application code and UI. You can read about the tools in the <a
182href="{@docRoot}guide/developing/tools/index.html">Dev Guide</a> and access them
183in the <code>&lt;sdk&gt;/tools/</code> directory. </li>
184
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700185<li><strong>Android platforms</strong> &mdash; An SDK platform is
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700186available for every production Android platform deployable to Android-powered
187devices. Each platform component includes a fully compliant Android library and
188system image, sample code, emulator skins, and any version specific tools. For
189detailed information about each platform, see the overview documents available
190under the section "Downloadable SDK Components," at left. </li>
191
192<li><strong>SDK Add-Ons</strong> &mdash; SDK add-ons provide a development
193environment for specific Android external
194library or a customized (but fully compliant) Android system image. The Android
195SDK repository offers the Google APIs Add-On, which gives your application
196access to powerful mapping capabilities through the
197<code>com.google.android.maps</code> library. You can also add additional
198repositories, so that you can download other SDK add-ons, where available. </li>
199
Scott Main06cf15e2010-10-28 00:02:31 -0700200<li><strong>USB Driver for Windows</strong> &mdash; Contains driver files
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700201that you can install on your Windows computer, so that you can run and debug
202your applications on an actual device. You <em>do not</em> need the USB driver unless
203you plan to debug your application on an actual Android-powered device. If you
Scott Main06cf15e2010-10-28 00:02:31 -0700204develop on Mac OS X or Linux, you do not need a special driver to debug
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700205your application on an Android-powered device.</li>
206
207<li><strong>Samples</strong> &mdash; Contains the sample code and apps available
208for each Android development platform. If you are just getting started with
209Android development, make sure to download the samples to your SDK. <!--The download
210includes not only a set of very useful sample apps, but also the source for <a
211href="{@docRoot}resources/tutorials/hello-world.html">Hello World</a> and other
212tutorials. --></li>
213
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700214<li><strong>Documentation</strong> &mdash; Contains a local copy of the latest
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700215multiversion documentation for the Android framework API. </li>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700216</ul>
217
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700218<p>To download components, use the graphical UI of the Android SDK and AVD
219Manager, shown in Figure 1, to browse the SDK repository, select new or updated
220components for download, and then install the selected components in your SDK
221environment. </p>
222
Scott Main06cf15e2010-10-28 00:02:31 -0700223<div style="TEXT-ALIGN:left;width:600px;">
224<img src="/images/sdk_manager_packages.png"
225style="padding-bottom:0;margin-bottom:0;" />
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700226<p class="caption" style="margin:0 0 1.5em 1em;padding:0 0 0
Scott Main06cf15e2010-10-28 00:02:31 -07002271em;"><strong>Figure 1.</strong> The Android SDK and AVD Manager's
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700228<strong>Available Packages</strong>
229panel, which shows the SDK components that are
230available for you to download into your environment. </p>
Scott Main06cf15e2010-10-28 00:02:31 -0700231</div>
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700232
233
234<h3 id="which">Which components do I need?</h3>
235
236<p>The SDK repository contains a range of components that you can download.
237Use the table below to determine which components you need, based on whether you
238want to set up a basic (but functionnal) development environment or a
239recommended or full development environment: </p>
240
241<table style="width:95%">
242
243<tr>
244<th>Environment</th>
245<th>SDK&nbsp;Component</th>
246<th>Comments</th>
247</tr>
248
249<tr>
250<td rowspan="2" style="font-size:.9em;background-color:#FFE;">Basic</td>
251<td style="font-size:.9em;background-color:#FFE;color:gray">SDK Tools</td>
252<td style="font-size:.9em;background-color:#FFE;color:gray">If you've installed
253the SDK starter package, then you already have this component preinstalled. The
Scott Main06cf15e2010-10-28 00:02:31 -0700254SDK Tools and the SDK Platform-tools components are required &mdash; you can't develop or build an
255application without these. Make sure you keep these up to date.</td>
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700256</tr>
257
258<tr>
259<td style="font-size:.9em;background-color:#FFE;">SDK platform</td>
260<td style="font-size:.9em;background-color:#FFE;">You need to download <strong
261style="color:red">at least one platform</strong> into your environment, so that
262you will be able to compile your application and set up an Android Virtual
263Device (AVD) to run it on (in the emulator). To start with, just download the
264latest version of the platform. Later, if you plan to publish your application,
265you will want to download other platforms as well, so that you can test your
266application on the full range of Android platform versions that your customers
267are using.</td>
268</tr>
269<tr>
270<td colspan="3" style="border:none;text-align:center;font-size:1.5em;font-weight:bold;">+</td>
271</tr>
272<tr>
273<td rowspan="3">Recommended</td>
274<td>Documentation</td>
275<td>The Documentation component is useful because it lets you work offline and
276also look up API reference information from inside Eclipse.</td>
277</tr>
278
279<tr>
280<td>Samples</td>
281<td>The Samples components give you source code that you can use to learn about
282Android, load as a project and run, or reuse in your own app. Note that multiple
283samples components are available &mdash; one for each Android platform version. When
284you are choosing a samples component to download, select the one whose API Level
285matches the API Level of the Android platform that you plan to use.</td>
286</tr>
287<tr>
288<td>Usb Driver</td>
289<td>The Usb Driver component is needed only if you are developing on Windows and
290have an Android-powered device on which you want to install your application for
291debugging and testing. For Mac OS X and Linux platforms, no
292special driver is needed.</td>
293</tr>
294<tr>
295<td colspan="3" style="border:none;text-align:center;font-size:1.5em;font-weight:bold;">+</td>
296</tr>
297<tr>
298<td rowspan="3">Full</td>
299<td>Google APIs</td>
300<td>The Google APIs add-on gives your application access to the Maps external
301library, which makes it easy to display and manipulate Maps data in your
302application. </td>
303</tr>
304<tr>
305<td>Additional SDK Platforms</td>
306<td>If you plan to publish your application, you will want to download
307additional platforms corresponding to the Android platform versions on which you
308want the application to run. The recommended approach is to compile your
309application against the lowest version you want to support, but test it against
Dirk Doughertybf15ce62009-10-23 19:17:12 -0700310higher versions that you intend the application to run on. You can test your
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700311applications on different platforms by running in an Android Virtual Device
312(AVD) on the Android emulator.</td>
313</tr>
314
315</table>
Dirk Doughertyeeb0b252009-10-22 16:08:32 -0700316
Dirk Doughertybf15ce62009-10-23 19:17:12 -0700317<p>For step-by-step instructions on how to use the Android SDK and AVD Manager
318to add components, see the <a href="{@docRoot}sdk/adding-components.html">Adding
319SDK Components</a> document. </p>
320
Scott Main06cf15e2010-10-28 00:02:31 -0700321<p>For revision notes and other detailed information about individual SDK
322components, see the documents listed under "Downloadable SDK Components" in
Dirk Doughertybf15ce62009-10-23 19:17:12 -0700323the navigation at left.</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700324
325
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700326<h2 id="sdkContents">Step 5. Exploring the SDK</h2>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700327
328<p>Once you've installed the SDK and downloaded the platforms, documentation,
329and add-ons that you need, open the SDK directory and take a look at what's
330inside.</p>
331
Scott Main06cf15e2010-10-28 00:02:31 -0700332<p>The table below describes the full SDK directory contents, with components
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700333installed. </p>
334
335<table>
336<tr>
337<th colspan="3">Name</th><th>Description</th>
338</tr>
339<tr>
340<td colspan="3"><code>add-ons/</code></td>
341<td>Contains add-ons to the Android SDK development
342environment, which let you develop against external libraries that are available on some
343devices. </td>
Scott Main081127b2010-10-29 15:56:27 -0700344</tr>repo
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700345<tr>
346<td colspan="3"><code>docs/</code></td>
347<td>A full set of documentation in HTML format, including the Developer's Guide,
Scott Main06cf15e2010-10-28 00:02:31 -0700348API Reference, and other information. To read the documentation, load the
Dirk Doughertyeeb0b252009-10-22 16:08:32 -0700349file <code>offline.html</code> in a web browser.</td>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700350</tr>
351<tr>
Scott Main06cf15e2010-10-28 00:02:31 -0700352<td colspan="3"><code>platform-tools/</code></td>
353<td>Contains development tools that may be updated with each platform release (from the <em>Android
354SDK Platform-tools</em> component). Tools in here include {@code adb}, {@code dexdump}, and others
355others that you don't typically use directly. These tools are separate from the generic development
356tools in the {@code tools/} directory, because these tools may be updated in order to support new
357features in the latest Android platform, whereas the other tools have no dependencies on the
358platform version.</td>
359</tr>
360<tr>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700361<td colspan="3"><code>platforms/</code></td>
362<td>Contains a set of Android platform versions that you can develop
363applications against, each in a separate directory. </td>
364</tr>
365<tr>
366<td style="width:2em;border-bottom-color:white;"></td>
Scott Main01979992010-04-05 17:42:17 -0700367<td colspan="2"><code><em>&lt;platform&gt;</em>/</code></td>
Scott Main06cf15e2010-10-28 00:02:31 -0700368<td>Platform version directory, for example "android-1.6". All platform version
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700369directories contain a similar set of files and subdirectory structure.</td>
370</tr>
371
372<tr>
373<td style="width:2em;border-bottom-color:white;">&nbsp;</td>
374<td style="width:2em;border-bottom-color:white;"></td>
375<td><code>data/</code></td>
376<td>Storage area for default fonts and resource definitions.</td>
377</tr>
378<tr>
379<td style="width:2em;border-bottom-color:white;"></td>
380<td style="width:2em;border-bottom-color:white;"></td>
381<td><code>images/</code></td>
Scott Main06cf15e2010-10-28 00:02:31 -0700382<td>Storage area for default disk images, including the Android system image,
383the default userdata image, the default ramdisk image, and more. The images
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700384are used in emulator sessions.</td>
385</tr>
386<tr>
387<td style="width:2em;border-bottom-color:white;"></td>
388<td style="width:2em;border-bottom-color:white;"></td>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700389<td><code>skins/</code></td>
390<td>A set of emulator skins available for the platform version. Each skin is
391designed for a specific screen resolution.</td>
392</tr>
393<tr>
394<td style="width:2em;border-bottom-color:white;"></td>
395<td style="width:2em;border-bottom-color:white;"></td>
396<td><code>templates/</code></td>
397<td>Storage area for file templates used by the SDK development tools.</td>
398</tr>
399<tr>
400<td style="width:2em;border-bottom-color:white;"></td>
401<td style="width:2em;border-bottom-color:white;"></td>
402<td><code>tools/</code></td>
Scott Main06cf15e2010-10-28 00:02:31 -0700403<td>This directory is used only by SDK Tools r7 and below for development tools that are specific to
404this platform version&mdash;it's not used by SDK Tools r8 and above.</td>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700405</tr>
406<tr>
407<td style="width:2em;"></td>
408<td style="width:2em;"></td>
409<td><code>android.jar</code></td>
410<td>The Android library used when compiling applications against this platform
411version.</td>
412</tr>
413<tr>
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700414<td colspan="3"><code>samples/</code></td>
415<td>Sample code and apps that are specific to platform version.</td>
416</tr>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700417<td colspan="3"><code>tools/</code></td>
Scott Main06cf15e2010-10-28 00:02:31 -0700418<td>Contains the set of development and profiling tools that are platform-independent, such
419as the emulator, the AVD and SDK Manager, adb, ddms, hierarchyviewer and more. The tools in
420this directory may be updated at any time (from the <em>Android SDK Tools</em> component),
421independent of platform releases, whereas the tools in {@code platform-tools/} may be updated based
422on the latest platform release.</td>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700423</tr>
424<tr>
Dirk Doughertyeeb0b252009-10-22 16:08:32 -0700425<td colspan="3"><code>SDK Readme.txt</code></td>
Scott Main06cf15e2010-10-28 00:02:31 -0700426<td>A file that explains how to perform the initial setup of your SDK,
427including how to launch the Android SDK and AVD Manager tool on all
Dirk Doughertyeeb0b252009-10-22 16:08:32 -0700428platforms</td>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700429</tr>
430<tr>
Scott Main06cf15e2010-10-28 00:02:31 -0700431<td colspan="3"><code>SDK Manager.exe</code></td>
432<td>Windows SDK only. A shortcut that launches the Android SDK and AVD
Dirk Doughertyeeb0b252009-10-22 16:08:32 -0700433Manager tool, which you use to add components to your SDK. </td>
434</tr>
435<!--<tr>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700436<td colspan="3"><code>documentation.html</code></td>
437<td>A file that loads the entry page for the local Android SDK
438documentation.</td>
Dirk Doughertyeeb0b252009-10-22 16:08:32 -0700439</tr>-->
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700440
441</table>
442
443<h2 id="NextSteps">Next Steps</h2>
444<p>Once you have completed installation, you are ready to
445begin developing applications. Here are a few ways you can get started: </p>
446
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700447<p><strong>Set up the Hello World application</strong></p>
448<ul>
Scott Main01979992010-04-05 17:42:17 -0700449 <li>If you have just installed the SDK for the first time, go to the <a
450 href="{@docRoot}resources/tutorials/hello-world.html">Hello
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700451 World tutorial</a>. The tutorial takes you step-by-step through the process
452 of setting up your first Android project, including setting up an Android
Scott Main01979992010-04-05 17:42:17 -0700453 Virtual Device (AVD) on which to run the application.
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700454</li>
455</ul>
456
Scott Main06cf15e2010-10-28 00:02:31 -0700457<p class="caution">Following the Hello World tutorial is an essential
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700458first step in getting started with Android development. </p>
459
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700460<p><strong>Learn about Android</strong></p>
461<ul>
462 <li>Take a look at the <a href="{@docRoot}guide/index.html">Dev
463 Guide</a> and the types of information it provides</li>
464 <li>Read an introduction to Android as a platform in <a
465 href="{@docRoot}guide/basics/what-is-android.html">What is
466 Android?</a></li>
467 <li>Learn about the Android framework and how applications run on it in
468 <a href="{@docRoot}guide/topics/fundamentals.html">Application
469 Fundamentals</a></li>
470 <li>Take a look at the Android framework API specification in the <a
471 href="{@docRoot}reference/packages.html">Reference</a> tab</li>
472</ul>
473
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700474<p><strong>Explore the development tools</strong></p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700475<ul>
476 <li>Get an overview of the <a
477 href="{@docRoot}guide/developing/tools/index.html">development
478 tools</a> that are available to you</li>
479 <li>Read how to develop <a
480 href="{@docRoot}guide/developing/eclipse-adt.html">in Eclipse/ADT</a> or
481 <a href="{@docRoot}guide/developing/other-ide.html">in other IDEs</a>
482 </li>
Scott Main01979992010-04-05 17:42:17 -0700483 <li>Read <a href="{@docRoot}guide/developing/device.html">Developing on a Device</a> to set up an
484Android-powered device to run and test your application.</li>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700485</ul>
486
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700487<p><strong>Follow the Notepad tutorial</strong></p>
488
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700489<ul>
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700490 <li>The <a href="{@docRoot}resources/tutorials/notepad/index.html">
Scott Main06cf15e2010-10-28 00:02:31 -0700491 Notepad Tutorial</a> shows you how to build a full Android application
492 and provides helpful commentary on the Android system and API. The
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700493 Notepad tutorial helps you bring together the important design
Scott Main06cf15e2010-10-28 00:02:31 -0700494 and architectural concepts in a moderately complex application.
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700495 </li>
496</ul>
Scott Main06cf15e2010-10-28 00:02:31 -0700497<p class="caution">Following the Notepad tutorial is an excellent
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700498second step in getting started with Android development. </p>
499
500<p><strong>Explore some code</strong></p>
501
502<ul>
503 <li>The Android SDK includes sample code and applications for each platform
Scott Main06cf15e2010-10-28 00:02:31 -0700504version. You can browse the samples in the <a
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700505href="{@docRoot}resources/index.html">Resources</a> tab or download them
506into your SDK using the Android SDK and AVD Manager. Once you've downloaded the
507samples, you'll find them in
508<code><em>&lt;sdk&gt;</em>/samples/<em>&lt;platform&gt;/</em></code>. </li>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700509</ul>
510
511<p><strong>Visit the Android developer groups</strong></p>
512<ul>
513 <li>Take a look at the <a
Dirk Dougherty22558d02009-12-10 16:25:06 -0800514 href="{@docRoot}resources/community-groups.html">Community</a> pages to see a list of
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700515 Android developers groups. In particular, you might want to look at the
516 <a href="http://groups.google.com/group/android-developers">Android
517 Developers</a> group to get a sense for what the Android developer
518 community is like.</li>
519</ul>
520
Dirk Dougherty6b13bc02009-10-30 19:05:53 -0700521<h2 id="troubleshooting">Troubleshooting</h2>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700522
523<h3>Ubuntu Linux Notes</h3>
524
525<ul>
526 <li>If you need help installing and configuring Java on your
Scott Main06cf15e2010-10-28 00:02:31 -0700527 development machine, you might find these resources helpful:
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700528 <ul>
529 <li><a href="https://help.ubuntu.com/community/Java">https://help.ubuntu.com/community/Java </a></li>
530 <li><a href="https://help.ubuntu.com/community/Java">https://help.ubuntu.com/community/JavaInstallation</a></li>
531 </ul>
532 </li>
533 <li>Here are the steps to install Java and Eclipse, prior to installing
534 the Android SDK and ADT Plugin.
535 <ol>
536 <li>If you are running a 64-bit distribution on your development
537 machine, you need to install the <code>ia32-libs</code> package using
538 <code>apt-get:</code>:
539 <pre>apt-get install ia32-libs</pre>
540 </li>
Scott Mainef4ca452010-04-12 16:05:49 -0700541 <li>Next, install Java: <pre>apt-get install sun-java6-jdk</pre></li>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700542 <li>The Ubuntu package manager does not currently offer an Eclipse 3.3
543 version for download, so we recommend that you download Eclipse from
544 eclipse.org (<a
545 href="http://www.eclipse.org/downloads/">http://www.eclipse.org/
546 downloads/</a>). A Java or RCP version of Eclipse is recommended.</li>
Scott Main06cf15e2010-10-28 00:02:31 -0700547 <li>Follow the steps given in previous sections to install the SDK
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700548 and the ADT plugin. </li>
549 </ol>
550 </li>
551</ul>
552
553<h3>Other Linux Notes</h3>
554
555<ul>
556 <li>If JDK is already installed on your development computer, please
557 take a moment to make sure that it meets the version requirements listed
558 in the <a href="requirements.html">System Requirements</a>.
559 In particular, note that some Linux distributions may include JDK 1.4 or Gnu
560 Compiler for Java, both of which are not supported for Android development.</li>
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700561</ul>