page.title=Adding SDK Components
@jd:body


<div id="qv-wrapper">
<div id="qv">
<h2>Quickview</h2>
<ul>
  <li>Use the Android SDK and AVD Manager to
   set up your SDK and keep it up-to-date.</li>
</ul>

<h2>In this document</h2>
<ol>
  <li><a href="#launching">Launching the Android SDK and AVD Manager</a>
  <li><a href="#InstallingComponents">Installing SDK Components</a>
  <li><a href="#UpdatingComponents">Updating SDK Components</a>
  <li><a href="#dependencies">Component Dependencies</a></li>
  <li><a href="#AddingSites">Adding New Sites</a></li>
  <li><a href="#troubleshooting">Troubleshooting</a></li>
</ol>
</div>
</div>

<p>Adding and updating components in your Android SDK is fast and easy. To add or
update the individual SDK components that you need, use the <em>Android SDK and AVD
Manager</em> (included in the SDK Tools).</p>

<p>It only takes a couple of clicks to install individual versions of the
Android platform, new development tools, new documentation, and SDK add-ons. The
new SDK components are automatically installed into your existing SDK directory,
so you don't need to update your development environment to specify a new SDK
location.</p>

<p>If you're setting up your Android SDK for the first time,
see <a href="{@docRoot}sdk/installing.html#components">Installing the SDK</a> for information about
what components to install.</p>

<p class="note"><strong>Note:</strong> If you develop in Eclipse, you might also need
to update your ADT plugin when you update your development tools. See the revisions listed in the
<a href="{@docRoot}sdk/eclipse-adt.html">ADT Plugin for Eclipse</a> document.</p>

<img src="{@docRoot}images/sdk_manager_packages.png" alt="" />
<p class="img-caption"><strong>Figure 1.</strong> The Android SDK and AVD Manager's
<strong>Available Packages</strong> panel, which shows the SDK components that are
available for you to download into your environment. </p>
</div>

<h2 id="launching">Launching the Android SDK and AVD Manager</h2>

<p>The Android SDK and AVD Manager is the tool that you use to install and
upgrade SDK components in your development environment. </p>

<p>You can launch the Android SDK and AVD Manager in one of the following ways.</p>

<h4>Launching from Eclipse/ADT</h4>

<p>If you are developing in Eclipse and have already installed the ADT Plugin,
follow these steps to access the Android SDK and AVD Manager tool:</p>

<ol>
<li>Open Eclipse</li>
<li>Select <strong>Window</strong> &gt; <strong>Android SDK and AVD
Manager</strong>.</li>
</ol>

<h4>Launching from the SDK Manager script (Windows only)</h4>

<p>For Windows only, the SDK includes a script that invokes the Android SDK and
AVD Manager. To launch the tool using the script, double-click {@code SDK
Manager.exe} at the root of the the SDK directory.</p>

<h4>Launching from a command line</h4>

<p>In all development environments, follow these steps to access the Android SDK
and AVD Manager tool from the command line: </p>

<ol>
<li>Navigate to the <code>&lt;<em>sdk</em>&gt;/tools/</code> directory.</li>
<li>Execute the {@code android} tool command with no options.
  <pre style="width:400px">$ android</pre></li>
</ol>


<h2 id="InstallingComponents">Installing SDK Components</h2>

<p class="caution"><strong>Caution:</strong> Before you install SDK components,
we recommend that you disable any antivirus software that may be running on
your computer. There are cases in which antivirus software on Windows is known to interfere with the
installation process, so we suggest you disable your antivirus until installation is
complete.</p>

<p>Follow these steps to install new SDK components in your environment:</p>

<ol>
  <li>Launch the Android SDK and AVD Manager as described in the section above.</li>
  <li>Select <strong>Available Packages</strong> in the left panel.
  This will reveal all of the components that are currently available for download
  from the SDK repository.</li>
  <li>Select the component(s) you'd like to install and click <strong>Install
  Selected</strong>. (If you aren't sure which packages to select, read <a
  href="installing.html#which">Recommended Components</a>.)</li>
  <li>Verify and accept the components you want (ensure each one is selected with a green
checkmark) and click <strong>Install</strong>. The components will now be installed into
your existing Android SDK directories.</li>
</ol>

<p>New platforms are automatically saved into the
<code>&lt;sdk&gt;/platforms/</code> directory of your SDK;
new add-ons are saved in the <code>&lt;sdk&gt;/add-ons/</code>
directory; samples are saved in the
<code>&lt;sdk&gt;/samples/android-&lt;level&gt;/</code>;
and new documentation is saved in the existing
<code>&lt;sdk&gt;/docs/</code> directory (old docs are replaced).</p>


<h2 id="UpdatingComponents">Updating SDK Components</h2>

<p>From time to time, new revisions of existing SDK components are released and
made available to you through the SDK repository. In most cases, if you have those
components installed in your environment, you will want
to download the new revisions as soon as possible. </p>

<p>You can learn about the release of new revisions in two ways: </p>

<ul>
<li>You can watch for updates listed in the "SDK" tab of the Android Developers
site, in the "Downloadable SDK Components" section. </li>
<li>You can watch for updates listed in the <strong>Available Packages</strong>
panel of the Android SDK and AVD Manager. </li>
</ul>

<p>When you see that a new revision is available, you can use the Android SDK
and AVD Manager to quickly download it to your environment. Follow the same
procedure as given in <a href="#InstallingComponents">Installing SDK Components</a>, above. The new
component is installed in place of the old, but without impacting your
applications. </p>

<p class="note"><strong>Tip:</strong>
Use the "Display updates only" checkbox to show only the components
you do not have.</p>


<h2 id="dependencies">SDK Component Dependencies</h2>

<p>In some cases, an SDK component may require a specific minimum revision of
another component or SDK tool. Where such dependencies exist, they are
documented in the revision notes for each component, available from the links in
the "Downloadable SDK Components" section at left.</p>

<p>For example, there may be a dependency between the ADT Plugin for Eclipse and
the SDK Tools component. When you install the SDK Tools
component, you should also upgrade to the required version of ADT (if you
are developing in Eclipse). In this case,  the major version number for your ADT plugin should
always match the revision number of your SDK Tools (for example, ADT 8.x requires SDK Tools r8).
</p>

<p>Also make sure that, each time you install a new version of the Android platform, you have
the latest version of the SDK Platform-tools component. The SDK Platform-tools contain
tools that are backward compatible with all versions of the Android platform and are
often updated to support new features in the latest version of the Android platform.</p>

<p>The development tools will notify you with debug warnings if there is dependency that you need to
address. The SDK and AVD Manager also enforces dependencies by requiring that you download any
components that are needed by those you have selected.</p>


<h2 id="AddingSites">Adding New Sites</h2>

<p>By default, <strong>Available Packages</strong> displays components available from the
<em>Android Repository</em> and <em>Third party Add-ons</em>. You can add other sites that host
their own Android SDK add-ons, then download the SDK add-ons
from those sites.</p>

<p>For example, a mobile carrier or device manufacturer might offer additional
API libraries that are supported by their own Android-powered devices. In order
to develop using their libraries, you must install their Android SDK add-on, if it's not already
available under <em>Third party Add-ons</em>. </p>

<p>If a carrier or device manufacturer has hosted an SDK add-on repository file
on their web site, follow these steps to add their site to the SDK and AVD
Manager:</p>

<ol>
  <li>Select <strong>Available Packages</strong> in the left panel.</li>
  <li>Click <strong>Add Add-on Site</strong> and enter the URL of the
{@code repository.xml} file. Click <strong>OK</strong>.</li>
</ol>
<p>Any SDK components available from the site will now be listed under a new item named
<strong>User Add-ons</strong>.</p>


<h2 id="troubleshooting">Troubleshooting</h2>

<p><strong>Problems connecting to the SDK repository</strong></p>

<p>If you are using the SDK and AVD Manager to download components and are encountering
connection problems, try connecting over http, rather than https. To switch the
protocol used by the SDK and AVD Manager, follow these steps: </p>

<ol>
  <li>With the Android SDK and AVD Manager window open, select "Settings" in the
  left pane. </li>
  <li>On the right, in the "Misc" section, check the checkbox labeled "Force
  https://... sources to be fetched using http://..." </li>
  <li>Click <strong>Save &amp; Apply</strong>.</li>
</ol>


