blob: 8484beadcba69e6939b443bd59d5cf40fb6f1cb1 [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>
Dirk Dougherty7b229ef2010-03-26 17:32:26 -070011 <li><a href="#Preparing">Preparing Your Development Computer</a></li>
12 <li><a href="#Installing">Downloading the SDK Starter Package</a></li>
13 <li><a href="#InstallingADT">Installing the ADT Plugin for Eclipse</a></li>
14 <li><a href="#components">Adding Platforms and Other Components</a>
15 <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 Main06cf15e2010-10-28 00:02:31 -070041<p>If you are currently using the Android 1.6 SDK or later and want to update
42to the latest tools or platforms, you do not need to install a new SDK. Instead,
43you can simply update the individual components in your SDK using the
44Android SDK and AVD Manager tool. For information about how to do that, see <a
45href="{@docRoot}sdk/adding-components.html#UpdatingComponents">Updating SDK
Dirk Dougherty7b229ef2010-03-26 17:32:26 -070046Components</a></p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070047
Dirk Dougherty7b229ef2010-03-26 17:32:26 -070048<p>If you are using Android 1.5 SDK or earlier, you should install a new SDK as
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070049described in this document and move your application projects to the new
Dirk Doughertya374f512009-11-09 11:41:09 -080050SDK environment. </p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070051
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070052
Dirk Dougherty7b229ef2010-03-26 17:32:26 -070053<h2 id="Preparing">Step 1. Preparing Your Development Computer</h2>
54
55<p>Before getting started with the Android SDK, take a moment to confirm that
56your development computer meets the <a href="requirements.html">System
Scott Main06cf15e2010-10-28 00:02:31 -070057Requirements</a>. In particular, you may need to install the <a
58href="http://java.sun.com/javase/downloads/index.jsp">JDK</a> before
Dirk Dougherty7b229ef2010-03-26 17:32:26 -070059continuing, if it's not already installed on your computer. </p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070060
61<p>If you will be developing in Eclipse with the Android Development
62Tools (ADT) Plugin &mdash; the recommended path if you are new to
63Android &mdash; make sure that you have a suitable version of Eclipse
Scott Main06cf15e2010-10-28 00:02:31 -070064installed on your computer (3.4 or newer is recommended). If you need
65to install Eclipse, you can download it from this location: </p>
66
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070067<p style="margin-left:2em;"><a href=
Scott Main06cf15e2010-10-28 00:02:31 -070068"http://www.eclipse.org/downloads/">http://www.eclipse.org/downloads/</a></p>
69
70<p>A Java or RCP version of Eclipse is recommended. For Eclipse 3.5, the
71"Eclipse Classic" version is recommended.</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070072
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070073
Dirk Dougherty7b229ef2010-03-26 17:32:26 -070074<h2 id="Installing">Step 2. Downloading the SDK Starter Package</h2>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070075
Dirk Dougherty7b229ef2010-03-26 17:32:26 -070076<p>The first step in setting up your environment for developing Android applications
77is downloading the Android SDK starter package. The starter package is not a full
Scott Main06cf15e2010-10-28 00:02:31 -070078development environment &mdash; it includes only the core SDK Tools, which you can
79use to download the rest of the SDK components (such as the platform system images). </p>
Dirk Dougherty7b229ef2010-03-26 17:32:26 -070080
81<p>You can get the latest version of the SDK starter package from the <a
82href="{@docRoot}sdk/index.html">SDK download page</a>. Make sure to download the
83package that is appropriate for your development computer.</p>
84
Scott Main06cf15e2010-10-28 00:02:31 -070085<p class="note"><strong>Note:</strong> If you're using Windows, we recommend that you download
86the SDK installer (the {@code .exe} file from the download table). It will guide you through the
87installation process and check your computer for the required software.</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -070088
Scott Main06cf15e2010-10-28 00:02:31 -070089<p>If you downloaded a {@code .zip} of {@code .tgz} (instead of using the SDK installer), unpack the
90Android SDK archive to a safe location on your machine. By default, the SDK files are unpacked into
91a directory named <code>android-sdk-&lt;machine-platform&gt;</code>.</p>
92
93<p>Make a note of the name and
94location of the unpacked SDK directory on your system &mdash; you will need to
95refer to the SDK directory later, when setting up the ADT plugin and when using
96the SDK tools from command line.</p>
97
98<p>Optionally, you might want to add the location of the SDK's primary
99<code>tools</code> directory and the additional {@code platform-tools/} directory to your system
100<code>PATH</code>. Both tool directories are located at the root of the SDK folder. Adding
101<code>tools/</code> and {@code platform-tools/} to your path lets you run Android Debug Bridge (adb)
102and the other command line <a
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700103href="{@docRoot}guide/developing/tools/index.html">tools</a> without needing to
Scott Main06cf15e2010-10-28 00:02:31 -0700104supply the full path to the tool directories. </p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700105
106<ul>
107 <li>On Linux, edit your <code>~/.bash_profile</code> or <code>~/.bashrc</code> file. Look
108 for a line that sets the PATH environment variable and add the
Scott Main06cf15e2010-10-28 00:02:31 -0700109 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 -0700110 see a line setting the path, you can add one:</li>
111
Scott Main06cf15e2010-10-28 00:02:31 -0700112 <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 -0700113
114 <li>On a Mac OS X, look in your home directory for <code>.bash_profile</code> and
Scott Main06cf15e2010-10-28 00:02:31 -0700115 proceed as for Linux. You can create the <code>.bash_profile</code> if
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700116 you haven't already set one up on your machine. </li>
117
Scott Main06cf15e2010-10-28 00:02:31 -0700118 <li>On Windows, right-click on My Computer, and select Properties.
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700119 Under the Advanced tab, hit the Environment Variables button, and in the
Scott Main06cf15e2010-10-28 00:02:31 -0700120 dialog that comes up, double-click on Path (under System Variables). Add the full path to the
121 <code>tools/</code> and {@code platform-tools/} directories to the path. </li>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700122 </ul>
123
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700124<p>If you will be using the Eclipse IDE as your development environment, the
125next section describes how to install the Android Development Tools (ADT) plugin
126and set up Eclipse. If you choose not to use Eclipse, you can develop Android
127applications in an IDE of your choice and then compile, debug and deploy using
128the tools included in the SDK (skip to <a href="#components">Adding Platforms
129and Other Components</a>).</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700130
131
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700132<h2 id="InstallingADT">Step 3. Installing the ADT Plugin for Eclipse</h2>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700133
134<p>Android offers a custom plugin for the Eclipse IDE, called Android
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700135Development Tools (ADT), that is designed to give you a powerful, integrated
136environment in which to build Android applications. It extends the capabilites
137of Eclipse to let you quickly set up new Android projects, create an application
138UI, add components based on the Android Framework API, debug your applications
139using the Android SDK tools, and even export signed (or unsigned) APKs in order
140to distribute your application. In general, developing in Eclipse with ADT is a
141highly recommended approach and is the fastest way to get started with Android.
142</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700143
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700144<p>If you'd like to use ADT for developing Android applications, install it now.
145Read <a href="{@docRoot}sdk/eclipse-adt.html">ADT Plugin for Eclipse</a> for
146step-by-step installation instructions, then return here to continue with the
147last step in setting up your SDK: adding platforms and other
148components.</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700149
150<p>If you prefer to work in an IDE other than Eclipse, you do not need to
151install Eclipse or ADT, instead, you can directly use the SDK tools to build and
Dirk Doughertyeeb0b252009-10-22 16:08:32 -0700152debug your application.</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700153
Dirk Doughertybf15ce62009-10-23 19:17:12 -0700154
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700155<h2 id="components">Step 4. Adding Android Platforms and Other Components</h2>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700156
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700157<div class="sidebox-wrapper" style="margin-right:2.5em;">
158<div class="sidebox"> <h2>Using the Android SDK and AVD Manager</h2>
Dirk Doughertybf15ce62009-10-23 19:17:12 -0700159
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700160<p>The <em>Android SDK and AVD Manager</em> is a tool that you will use often,
161to add components to your SDK environment and manage Android Virtual Devices.
162</p>
163
164<p style="margin-top:.5em;">The tool is pre-installed in your SDK. See <a
165href="adding-components.html">Adding SDK Components</a> for details on how to
166launch and use the tool.</p>
Dirk Doughertybf15ce62009-10-23 19:17:12 -0700167</div>
168</div>
169
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700170<p>The last step in setting up your SDK is using a tool included the SDK starter
171package &mdash; the <em>Android SDK and AVD Manager</em> &mdash; to download
172essential components into your development environment. Read the information
173below to understand what components you'll need, then see <a
174href="adding-components.html">Adding SDK Components</a> for step-by-step
175instructions on how to launch the Android SDK and AVD Manager and download the
176components into your environment.</p>
Dirk Doughertybf15ce62009-10-23 19:17:12 -0700177
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700178<p>The SDK uses a modular structure that separates the major parts of the SDK
179&mdash; Android platform versions, add-ons, tools, samples, and the API
180documentation &mdash; into a set of separately installable components. The SDK
181starter package, which you've already downloaded, includes only a single
182component: the latest version of the SDK Tools. To develop any Android
183application, you also need to download at least one Android platform into your
184environment, although downloading additional components is highly recommended.
185See <a href="#which">Which components do I need?</a> for information about
186which components are required and which are optional.</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700187
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700188<p>The SDK repository offers these types of components:</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700189
190<ul>
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700191<li><strong>SDK Tools</strong> (pre-installed in the Android SDK starter
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700192package) &mdash; Contains the full set of SDK tools for developing, debugging,
193and testing your application code and UI. You can read about the tools in the <a
194href="{@docRoot}guide/developing/tools/index.html">Dev Guide</a> and access them
195in the <code>&lt;sdk&gt;/tools/</code> directory. </li>
196
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700197<li><strong>Android platforms</strong> &mdash; An SDK platform is
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700198available for every production Android platform deployable to Android-powered
199devices. Each platform component includes a fully compliant Android library and
200system image, sample code, emulator skins, and any version specific tools. For
201detailed information about each platform, see the overview documents available
202under the section "Downloadable SDK Components," at left. </li>
203
204<li><strong>SDK Add-Ons</strong> &mdash; SDK add-ons provide a development
205environment for specific Android external
206library or a customized (but fully compliant) Android system image. The Android
207SDK repository offers the Google APIs Add-On, which gives your application
208access to powerful mapping capabilities through the
209<code>com.google.android.maps</code> library. You can also add additional
210repositories, so that you can download other SDK add-ons, where available. </li>
211
Scott Main06cf15e2010-10-28 00:02:31 -0700212<li><strong>USB Driver for Windows</strong> &mdash; Contains driver files
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700213that you can install on your Windows computer, so that you can run and debug
214your applications on an actual device. You <em>do not</em> need the USB driver unless
215you plan to debug your application on an actual Android-powered device. If you
Scott Main06cf15e2010-10-28 00:02:31 -0700216develop on Mac OS X or Linux, you do not need a special driver to debug
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700217your application on an Android-powered device.</li>
218
219<li><strong>Samples</strong> &mdash; Contains the sample code and apps available
220for each Android development platform. If you are just getting started with
221Android development, make sure to download the samples to your SDK. <!--The download
222includes not only a set of very useful sample apps, but also the source for <a
223href="{@docRoot}resources/tutorials/hello-world.html">Hello World</a> and other
224tutorials. --></li>
225
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700226<li><strong>Documentation</strong> &mdash; Contains a local copy of the latest
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700227multiversion documentation for the Android framework API. </li>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700228</ul>
229
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700230<p>To download components, use the graphical UI of the Android SDK and AVD
231Manager, shown in Figure 1, to browse the SDK repository, select new or updated
232components for download, and then install the selected components in your SDK
233environment. </p>
234
Scott Main06cf15e2010-10-28 00:02:31 -0700235<div style="TEXT-ALIGN:left;width:600px;">
236<img src="/images/sdk_manager_packages.png"
237style="padding-bottom:0;margin-bottom:0;" />
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700238<p class="caption" style="margin:0 0 1.5em 1em;padding:0 0 0
Scott Main06cf15e2010-10-28 00:02:31 -07002391em;"><strong>Figure 1.</strong> The Android SDK and AVD Manager's
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700240<strong>Available Packages</strong>
241panel, which shows the SDK components that are
242available for you to download into your environment. </p>
Scott Main06cf15e2010-10-28 00:02:31 -0700243</div>
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700244
245
246<h3 id="which">Which components do I need?</h3>
247
248<p>The SDK repository contains a range of components that you can download.
249Use the table below to determine which components you need, based on whether you
250want to set up a basic (but functionnal) development environment or a
251recommended or full development environment: </p>
252
253<table style="width:95%">
254
255<tr>
256<th>Environment</th>
257<th>SDK&nbsp;Component</th>
258<th>Comments</th>
259</tr>
260
261<tr>
262<td rowspan="2" style="font-size:.9em;background-color:#FFE;">Basic</td>
263<td style="font-size:.9em;background-color:#FFE;color:gray">SDK Tools</td>
264<td style="font-size:.9em;background-color:#FFE;color:gray">If you've installed
265the SDK starter package, then you already have this component preinstalled. The
Scott Main06cf15e2010-10-28 00:02:31 -0700266SDK Tools and the SDK Platform-tools components are required &mdash; you can't develop or build an
267application without these. Make sure you keep these up to date.</td>
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700268</tr>
269
270<tr>
271<td style="font-size:.9em;background-color:#FFE;">SDK platform</td>
272<td style="font-size:.9em;background-color:#FFE;">You need to download <strong
273style="color:red">at least one platform</strong> into your environment, so that
274you will be able to compile your application and set up an Android Virtual
275Device (AVD) to run it on (in the emulator). To start with, just download the
276latest version of the platform. Later, if you plan to publish your application,
277you will want to download other platforms as well, so that you can test your
278application on the full range of Android platform versions that your customers
279are using.</td>
280</tr>
281<tr>
282<td colspan="3" style="border:none;text-align:center;font-size:1.5em;font-weight:bold;">+</td>
283</tr>
284<tr>
285<td rowspan="3">Recommended</td>
286<td>Documentation</td>
287<td>The Documentation component is useful because it lets you work offline and
288also look up API reference information from inside Eclipse.</td>
289</tr>
290
291<tr>
292<td>Samples</td>
293<td>The Samples components give you source code that you can use to learn about
294Android, load as a project and run, or reuse in your own app. Note that multiple
295samples components are available &mdash; one for each Android platform version. When
296you are choosing a samples component to download, select the one whose API Level
297matches the API Level of the Android platform that you plan to use.</td>
298</tr>
299<tr>
300<td>Usb Driver</td>
301<td>The Usb Driver component is needed only if you are developing on Windows and
302have an Android-powered device on which you want to install your application for
303debugging and testing. For Mac OS X and Linux platforms, no
304special driver is needed.</td>
305</tr>
306<tr>
307<td colspan="3" style="border:none;text-align:center;font-size:1.5em;font-weight:bold;">+</td>
308</tr>
309<tr>
310<td rowspan="3">Full</td>
311<td>Google APIs</td>
312<td>The Google APIs add-on gives your application access to the Maps external
313library, which makes it easy to display and manipulate Maps data in your
314application. </td>
315</tr>
316<tr>
317<td>Additional SDK Platforms</td>
318<td>If you plan to publish your application, you will want to download
319additional platforms corresponding to the Android platform versions on which you
320want the application to run. The recommended approach is to compile your
321application against the lowest version you want to support, but test it against
Dirk Doughertybf15ce62009-10-23 19:17:12 -0700322higher versions that you intend the application to run on. You can test your
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700323applications on different platforms by running in an Android Virtual Device
324(AVD) on the Android emulator.</td>
325</tr>
326
327</table>
Dirk Doughertyeeb0b252009-10-22 16:08:32 -0700328
Dirk Doughertybf15ce62009-10-23 19:17:12 -0700329<p>For step-by-step instructions on how to use the Android SDK and AVD Manager
330to add components, see the <a href="{@docRoot}sdk/adding-components.html">Adding
331SDK Components</a> document. </p>
332
Scott Main06cf15e2010-10-28 00:02:31 -0700333<p>For revision notes and other detailed information about individual SDK
334components, see the documents listed under "Downloadable SDK Components" in
Dirk Doughertybf15ce62009-10-23 19:17:12 -0700335the navigation at left.</p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700336
337
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700338<h2 id="sdkContents">Step 5. Exploring the SDK</h2>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700339
340<p>Once you've installed the SDK and downloaded the platforms, documentation,
341and add-ons that you need, open the SDK directory and take a look at what's
342inside.</p>
343
Scott Main06cf15e2010-10-28 00:02:31 -0700344<p>The table below describes the full SDK directory contents, with components
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700345installed. </p>
346
347<table>
348<tr>
349<th colspan="3">Name</th><th>Description</th>
350</tr>
351<tr>
352<td colspan="3"><code>add-ons/</code></td>
353<td>Contains add-ons to the Android SDK development
354environment, which let you develop against external libraries that are available on some
355devices. </td>
356</tr>
357<tr>
358<td colspan="3"><code>docs/</code></td>
359<td>A full set of documentation in HTML format, including the Developer's Guide,
Scott Main06cf15e2010-10-28 00:02:31 -0700360API Reference, and other information. To read the documentation, load the
Dirk Doughertyeeb0b252009-10-22 16:08:32 -0700361file <code>offline.html</code> in a web browser.</td>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700362</tr>
363<tr>
Scott Main06cf15e2010-10-28 00:02:31 -0700364<td colspan="3"><code>platform-tools/</code></td>
365<td>Contains development tools that may be updated with each platform release (from the <em>Android
366SDK Platform-tools</em> component). Tools in here include {@code adb}, {@code dexdump}, and others
367others that you don't typically use directly. These tools are separate from the generic development
368tools in the {@code tools/} directory, because these tools may be updated in order to support new
369features in the latest Android platform, whereas the other tools have no dependencies on the
370platform version.</td>
371</tr>
372<tr>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700373<td colspan="3"><code>platforms/</code></td>
374<td>Contains a set of Android platform versions that you can develop
375applications against, each in a separate directory. </td>
376</tr>
377<tr>
378<td style="width:2em;border-bottom-color:white;"></td>
Scott Main01979992010-04-05 17:42:17 -0700379<td colspan="2"><code><em>&lt;platform&gt;</em>/</code></td>
Scott Main06cf15e2010-10-28 00:02:31 -0700380<td>Platform version directory, for example "android-1.6". All platform version
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700381directories contain a similar set of files and subdirectory structure.</td>
382</tr>
383
384<tr>
385<td style="width:2em;border-bottom-color:white;">&nbsp;</td>
386<td style="width:2em;border-bottom-color:white;"></td>
387<td><code>data/</code></td>
388<td>Storage area for default fonts and resource definitions.</td>
389</tr>
390<tr>
391<td style="width:2em;border-bottom-color:white;"></td>
392<td style="width:2em;border-bottom-color:white;"></td>
393<td><code>images/</code></td>
Scott Main06cf15e2010-10-28 00:02:31 -0700394<td>Storage area for default disk images, including the Android system image,
395the default userdata image, the default ramdisk image, and more. The images
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700396are used in emulator sessions.</td>
397</tr>
398<tr>
399<td style="width:2em;border-bottom-color:white;"></td>
400<td style="width:2em;border-bottom-color:white;"></td>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700401<td><code>skins/</code></td>
402<td>A set of emulator skins available for the platform version. Each skin is
403designed for a specific screen resolution.</td>
404</tr>
405<tr>
406<td style="width:2em;border-bottom-color:white;"></td>
407<td style="width:2em;border-bottom-color:white;"></td>
408<td><code>templates/</code></td>
409<td>Storage area for file templates used by the SDK development tools.</td>
410</tr>
411<tr>
412<td style="width:2em;border-bottom-color:white;"></td>
413<td style="width:2em;border-bottom-color:white;"></td>
414<td><code>tools/</code></td>
Scott Main06cf15e2010-10-28 00:02:31 -0700415<td>This directory is used only by SDK Tools r7 and below for development tools that are specific to
416this platform version&mdash;it's not used by SDK Tools r8 and above.</td>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700417</tr>
418<tr>
419<td style="width:2em;"></td>
420<td style="width:2em;"></td>
421<td><code>android.jar</code></td>
422<td>The Android library used when compiling applications against this platform
423version.</td>
424</tr>
425<tr>
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700426<td colspan="3"><code>samples/</code></td>
427<td>Sample code and apps that are specific to platform version.</td>
428</tr>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700429<td colspan="3"><code>tools/</code></td>
Scott Main06cf15e2010-10-28 00:02:31 -0700430<td>Contains the set of development and profiling tools that are platform-independent, such
431as the emulator, the AVD and SDK Manager, adb, ddms, hierarchyviewer and more. The tools in
432this directory may be updated at any time (from the <em>Android SDK Tools</em> component),
433independent of platform releases, whereas the tools in {@code platform-tools/} may be updated based
434on the latest platform release.</td>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700435</tr>
436<tr>
Dirk Doughertyeeb0b252009-10-22 16:08:32 -0700437<td colspan="3"><code>SDK Readme.txt</code></td>
Scott Main06cf15e2010-10-28 00:02:31 -0700438<td>A file that explains how to perform the initial setup of your SDK,
439including how to launch the Android SDK and AVD Manager tool on all
Dirk Doughertyeeb0b252009-10-22 16:08:32 -0700440platforms</td>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700441</tr>
442<tr>
Scott Main06cf15e2010-10-28 00:02:31 -0700443<td colspan="3"><code>SDK Manager.exe</code></td>
444<td>Windows SDK only. A shortcut that launches the Android SDK and AVD
Dirk Doughertyeeb0b252009-10-22 16:08:32 -0700445Manager tool, which you use to add components to your SDK. </td>
446</tr>
447<!--<tr>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700448<td colspan="3"><code>documentation.html</code></td>
449<td>A file that loads the entry page for the local Android SDK
450documentation.</td>
Dirk Doughertyeeb0b252009-10-22 16:08:32 -0700451</tr>-->
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700452
453</table>
454
455<h2 id="NextSteps">Next Steps</h2>
456<p>Once you have completed installation, you are ready to
457begin developing applications. Here are a few ways you can get started: </p>
458
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700459<p><strong>Set up the Hello World application</strong></p>
460<ul>
Scott Main01979992010-04-05 17:42:17 -0700461 <li>If you have just installed the SDK for the first time, go to the <a
462 href="{@docRoot}resources/tutorials/hello-world.html">Hello
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700463 World tutorial</a>. The tutorial takes you step-by-step through the process
464 of setting up your first Android project, including setting up an Android
Scott Main01979992010-04-05 17:42:17 -0700465 Virtual Device (AVD) on which to run the application.
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700466</li>
467</ul>
468
Scott Main06cf15e2010-10-28 00:02:31 -0700469<p class="caution">Following the Hello World tutorial is an essential
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700470first step in getting started with Android development. </p>
471
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700472<p><strong>Learn about Android</strong></p>
473<ul>
474 <li>Take a look at the <a href="{@docRoot}guide/index.html">Dev
475 Guide</a> and the types of information it provides</li>
476 <li>Read an introduction to Android as a platform in <a
477 href="{@docRoot}guide/basics/what-is-android.html">What is
478 Android?</a></li>
479 <li>Learn about the Android framework and how applications run on it in
480 <a href="{@docRoot}guide/topics/fundamentals.html">Application
481 Fundamentals</a></li>
482 <li>Take a look at the Android framework API specification in the <a
483 href="{@docRoot}reference/packages.html">Reference</a> tab</li>
484</ul>
485
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700486<p><strong>Explore the development tools</strong></p>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700487<ul>
488 <li>Get an overview of the <a
489 href="{@docRoot}guide/developing/tools/index.html">development
490 tools</a> that are available to you</li>
491 <li>Read how to develop <a
492 href="{@docRoot}guide/developing/eclipse-adt.html">in Eclipse/ADT</a> or
493 <a href="{@docRoot}guide/developing/other-ide.html">in other IDEs</a>
494 </li>
Scott Main01979992010-04-05 17:42:17 -0700495 <li>Read <a href="{@docRoot}guide/developing/device.html">Developing on a Device</a> to set up an
496Android-powered device to run and test your application.</li>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700497</ul>
498
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700499<p><strong>Follow the Notepad tutorial</strong></p>
500
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700501<ul>
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700502 <li>The <a href="{@docRoot}resources/tutorials/notepad/index.html">
Scott Main06cf15e2010-10-28 00:02:31 -0700503 Notepad Tutorial</a> shows you how to build a full Android application
504 and provides helpful commentary on the Android system and API. The
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700505 Notepad tutorial helps you bring together the important design
Scott Main06cf15e2010-10-28 00:02:31 -0700506 and architectural concepts in a moderately complex application.
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700507 </li>
508</ul>
Scott Main06cf15e2010-10-28 00:02:31 -0700509<p class="caution">Following the Notepad tutorial is an excellent
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700510second step in getting started with Android development. </p>
511
512<p><strong>Explore some code</strong></p>
513
514<ul>
515 <li>The Android SDK includes sample code and applications for each platform
Scott Main06cf15e2010-10-28 00:02:31 -0700516version. You can browse the samples in the <a
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700517href="{@docRoot}resources/index.html">Resources</a> tab or download them
518into your SDK using the Android SDK and AVD Manager. Once you've downloaded the
519samples, you'll find them in
520<code><em>&lt;sdk&gt;</em>/samples/<em>&lt;platform&gt;/</em></code>. </li>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700521</ul>
522
523<p><strong>Visit the Android developer groups</strong></p>
524<ul>
525 <li>Take a look at the <a
Dirk Dougherty22558d02009-12-10 16:25:06 -0800526 href="{@docRoot}resources/community-groups.html">Community</a> pages to see a list of
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700527 Android developers groups. In particular, you might want to look at the
528 <a href="http://groups.google.com/group/android-developers">Android
529 Developers</a> group to get a sense for what the Android developer
530 community is like.</li>
531</ul>
532
Dirk Dougherty6b13bc02009-10-30 19:05:53 -0700533<h2 id="troubleshooting">Troubleshooting</h2>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700534
535<h3>Ubuntu Linux Notes</h3>
536
537<ul>
538 <li>If you need help installing and configuring Java on your
Scott Main06cf15e2010-10-28 00:02:31 -0700539 development machine, you might find these resources helpful:
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700540 <ul>
541 <li><a href="https://help.ubuntu.com/community/Java">https://help.ubuntu.com/community/Java </a></li>
542 <li><a href="https://help.ubuntu.com/community/Java">https://help.ubuntu.com/community/JavaInstallation</a></li>
543 </ul>
544 </li>
545 <li>Here are the steps to install Java and Eclipse, prior to installing
546 the Android SDK and ADT Plugin.
547 <ol>
548 <li>If you are running a 64-bit distribution on your development
549 machine, you need to install the <code>ia32-libs</code> package using
550 <code>apt-get:</code>:
551 <pre>apt-get install ia32-libs</pre>
552 </li>
Scott Mainef4ca452010-04-12 16:05:49 -0700553 <li>Next, install Java: <pre>apt-get install sun-java6-jdk</pre></li>
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700554 <li>The Ubuntu package manager does not currently offer an Eclipse 3.3
555 version for download, so we recommend that you download Eclipse from
556 eclipse.org (<a
557 href="http://www.eclipse.org/downloads/">http://www.eclipse.org/
558 downloads/</a>). A Java or RCP version of Eclipse is recommended.</li>
Scott Main06cf15e2010-10-28 00:02:31 -0700559 <li>Follow the steps given in previous sections to install the SDK
Dirk Doughertyee58d1b2009-10-16 15:25:15 -0700560 and the ADT plugin. </li>
561 </ol>
562 </li>
563</ul>
564
565<h3>Other Linux Notes</h3>
566
567<ul>
568 <li>If JDK is already installed on your development computer, please
569 take a moment to make sure that it meets the version requirements listed
570 in the <a href="requirements.html">System Requirements</a>.
571 In particular, note that some Linux distributions may include JDK 1.4 or Gnu
572 Compiler for Java, both of which are not supported for Android development.</li>
Dirk Dougherty7b229ef2010-03-26 17:32:26 -0700573</ul>