2012-03-02 18:02:43 -08:00
|
|
|
|
page.title=Creating an Android Project
|
2014-10-20 14:29:22 -07:00
|
|
|
|
|
2014-10-22 17:13:51 -07:00
|
|
|
|
page.tags=eclipse adt, sdk tools, project setup
|
2014-10-20 14:29:22 -07:00
|
|
|
|
helpoutsWidget=true
|
2012-03-02 18:02:43 -08:00
|
|
|
|
|
|
|
|
|
trainingnavtop=true
|
|
|
|
|
next.title=Running Your App
|
|
|
|
|
next.link=running-app.html
|
|
|
|
|
|
|
|
|
|
@jd:body
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<!-- This is the training bar -->
|
2014-04-01 10:46:16 -07:00
|
|
|
|
<div id="tb-wrapper">
|
|
|
|
|
<div id="tb">
|
|
|
|
|
|
2012-03-02 18:02:43 -08:00
|
|
|
|
<h2>This lesson teaches you to</h2>
|
|
|
|
|
|
|
|
|
|
<ol>
|
|
|
|
|
<li><a href="#Eclipse">Create a Project with Eclipse</a></li>
|
|
|
|
|
<li><a href="#CommandLine">Create a Project with Command Line Tools</a></li>
|
|
|
|
|
</ol>
|
|
|
|
|
|
|
|
|
|
<h2>You should also read</h2>
|
|
|
|
|
|
|
|
|
|
<ul>
|
2012-06-21 17:14:39 -07:00
|
|
|
|
<li><a href="{@docRoot}sdk/installing/index.html">Installing the
|
2012-03-02 18:02:43 -08:00
|
|
|
|
SDK</a></li>
|
2012-06-21 17:14:39 -07:00
|
|
|
|
<li><a href="{@docRoot}tools/projects/index.html">Managing Projects</a></li>
|
2012-03-02 18:02:43 -08:00
|
|
|
|
</ul>
|
2014-04-01 10:46:16 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
2012-03-02 18:02:43 -08:00
|
|
|
|
|
|
|
|
|
<p>An Android project contains all the files that comprise the source code for your Android
|
|
|
|
|
app. The Android SDK tools make it easy to start a new Android project with a set of
|
2012-07-19 21:11:49 -07:00
|
|
|
|
default project directories and files.</p>
|
2012-03-02 18:02:43 -08:00
|
|
|
|
|
|
|
|
|
<p>This lesson
|
|
|
|
|
shows how to create a new project either using Eclipse (with the ADT plugin) or using the
|
|
|
|
|
SDK tools from a command line.</p>
|
|
|
|
|
|
|
|
|
|
<p class="note"><strong>Note:</strong> You should already have the Android SDK installed, and if
|
2012-07-24 15:51:27 -07:00
|
|
|
|
you're using Eclipse, you should also have the <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT
|
2014-04-01 10:46:16 -07:00
|
|
|
|
plugin</a> installed (version 22.6.2 or higher). If you don't have these, follow the guide to <a
|
2012-07-24 15:51:27 -07:00
|
|
|
|
href="{@docRoot}sdk/installing/index.html">Installing the Android SDK</a> before you start this
|
|
|
|
|
lesson.</p>
|
2012-03-02 18:02:43 -08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<h2 id="Eclipse">Create a Project with Eclipse</h2>
|
|
|
|
|
|
2012-07-19 21:11:49 -07:00
|
|
|
|
<ol>
|
2014-04-01 10:46:16 -07:00
|
|
|
|
<li>Click <strong>New</strong> <img src="{@docRoot}images/tools/eclipse-new.png"
|
2012-11-21 14:21:12 -08:00
|
|
|
|
style="vertical-align:baseline;margin:0" /> in the toolbar.</li>
|
|
|
|
|
<li>In the window that appears, open the <strong>Android</strong> folder,
|
|
|
|
|
select <strong>Android Application Project</strong>, and click <strong>Next</strong>.</li>
|
2012-07-19 21:11:49 -07:00
|
|
|
|
|
|
|
|
|
<div class="figure" style="width:420px">
|
2012-03-02 18:02:43 -08:00
|
|
|
|
<img src="{@docRoot}images/training/firstapp/adt-firstapp-setup.png" alt="" />
|
2012-07-19 21:11:49 -07:00
|
|
|
|
<p class="img-caption"><strong>Figure 1.</strong> The New Android App Project wizard in Eclipse.</p>
|
2012-03-02 18:02:43 -08:00
|
|
|
|
</div>
|
|
|
|
|
|
2012-07-19 21:11:49 -07:00
|
|
|
|
<li>Fill in the form that appears:
|
2012-03-02 18:02:43 -08:00
|
|
|
|
<ul>
|
2012-11-21 14:21:12 -08:00
|
|
|
|
<li><strong>Application Name</strong> is the app name that appears to users.
|
2012-07-19 21:11:49 -07:00
|
|
|
|
For this project, use "My First App."</p></li>
|
2012-11-21 14:21:12 -08:00
|
|
|
|
<li><strong>Project Name</strong> is the name of your project directory and the name visible in Eclipse.</li>
|
|
|
|
|
<li><strong>Package Name</strong> is the package namespace for your app (following the same
|
2012-03-02 18:02:43 -08:00
|
|
|
|
rules as packages in the Java programming language). Your package name
|
2012-07-19 21:11:49 -07:00
|
|
|
|
must be unique across all packages installed on the Android system. For this reason, it's generally
|
|
|
|
|
best if you use a name that begins with the reverse domain name of your organization or
|
|
|
|
|
publisher entity. For this project, you can use something like "com.example.myfirstapp."
|
|
|
|
|
However, you cannot publish your app on Google Play using the "com.example" namespace.</li>
|
2012-11-21 14:21:12 -08:00
|
|
|
|
<li><strong>Minimum Required SDK</strong> is the lowest version of Android that your app supports,
|
|
|
|
|
indicated using the <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels"
|
|
|
|
|
>API level</a>.
|
|
|
|
|
To support as many devices as possible, you should set this to the lowest version available
|
|
|
|
|
that allows your app to provide its core feature set. If any feature of your app is possible
|
|
|
|
|
only on newer versions of Android and it's not critical to the app's core feature set, you
|
|
|
|
|
can enable the feature only when running on the versions that support it (as
|
|
|
|
|
discussed in <a href="{@docRoot}training/basics/supporting-devices/platforms.html"
|
|
|
|
|
>Supporting Different Platform Versions</a>).
|
|
|
|
|
Leave this set to the default value for this project.
|
|
|
|
|
</li>
|
|
|
|
|
<li><strong>Target SDK</strong> indicates the highest version of Android (also using the
|
|
|
|
|
<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels"
|
|
|
|
|
>API level</a>) with which you
|
|
|
|
|
have tested with your application.
|
|
|
|
|
<p>As new versions of Android become available, you should
|
|
|
|
|
test your app on the new version and update this value to match the latest API level
|
|
|
|
|
in order to take advantage of new platform features.</p>
|
|
|
|
|
</li>
|
|
|
|
|
<li><strong>Compile With</strong> is the platform version against which you will compile your app.
|
2012-07-19 21:11:49 -07:00
|
|
|
|
By default, this is set to the latest version of Android available in your SDK. (It should
|
|
|
|
|
be Android 4.1 or greater; if you don't have such a version available, you must install one
|
|
|
|
|
using the <a href="{@docRoot}sdk/installing/adding-packages.html">SDK Manager</a>).
|
|
|
|
|
You can still build your app to
|
|
|
|
|
support older versions, but setting the build target to the latest version allows you to
|
|
|
|
|
enable new features and optimize your app for a great user experience on the latest
|
|
|
|
|
devices.</li>
|
2012-11-21 14:21:12 -08:00
|
|
|
|
<li><strong>Theme</strong> specifies the Android UI style to apply for your app. You can leave
|
|
|
|
|
this alone.</li>
|
2012-03-02 18:02:43 -08:00
|
|
|
|
</ul>
|
2012-07-19 21:11:49 -07:00
|
|
|
|
<p>Click <strong>Next</strong>.</p>
|
|
|
|
|
</li>
|
2012-11-21 14:21:12 -08:00
|
|
|
|
<li>On the next screen to configure the project, leave the default selections and click
|
|
|
|
|
<strong>Next</strong>.</li>
|
|
|
|
|
<li>The next screen can help you create a launcher icon for your app.
|
2012-07-19 21:11:49 -07:00
|
|
|
|
<p>You can customize an icon in several ways and the tool generates an icon for all
|
|
|
|
|
screen densities. Before you publish your app, you should be sure your icon meets
|
|
|
|
|
the specifications defined in the <a
|
|
|
|
|
href="{@docRoot}design/style/iconography.html">Iconography</a>
|
|
|
|
|
design guide.</p>
|
|
|
|
|
<p>Click <strong>Next</strong>.</p>
|
|
|
|
|
</li>
|
|
|
|
|
<li>Now you can select an activity template from which to begin building your app.
|
|
|
|
|
<p>For this project, select <strong>BlankActivity</strong> and click <strong>Next</strong>.</p>
|
2012-03-02 18:02:43 -08:00
|
|
|
|
</li>
|
2014-04-01 10:46:16 -07:00
|
|
|
|
<li>Leave all the details for the activity in their default state and click
|
2012-07-19 21:11:49 -07:00
|
|
|
|
<strong>Finish</strong>.</li>
|
2012-03-02 18:02:43 -08:00
|
|
|
|
</ol>
|
|
|
|
|
|
2014-04-01 10:46:16 -07:00
|
|
|
|
<p>Your Android project is now a basic "Hello World" app that contains some default files.
|
2014-03-12 16:02:51 -07:00
|
|
|
|
To run the app, continue to the <a href="running-app.html">next lesson</a>.</p>
|
2012-03-02 18:02:43 -08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<h2 id="CommandLine">Create a Project with Command Line Tools</h2>
|
|
|
|
|
|
|
|
|
|
<p>If you're not using the Eclipse IDE with the ADT plugin, you can instead create your project
|
2012-07-19 21:11:49 -07:00
|
|
|
|
using the SDK tools from a command line:</p>
|
2012-03-02 18:02:43 -08:00
|
|
|
|
|
|
|
|
|
<ol>
|
|
|
|
|
<li>Change directories into the Android SDK’s <code>tools/</code> path.</li>
|
|
|
|
|
<li>Execute:
|
|
|
|
|
<pre class="no-pretty-print">android list targets</pre>
|
|
|
|
|
<p>This prints a list of the available Android platforms that you’ve downloaded for your SDK. Find
|
|
|
|
|
the platform against which you want to compile your app. Make a note of the target id. We
|
|
|
|
|
recommend that you select the highest version possible. You can still build your app to
|
|
|
|
|
support older versions, but setting the build target to the latest version allows you to optimize
|
|
|
|
|
your app for the latest devices.</p>
|
|
|
|
|
<p>If you don't see any targets listed, you need to
|
|
|
|
|
install some using the Android SDK
|
2012-07-19 21:11:49 -07:00
|
|
|
|
Manager tool. See <a href="{@docRoot}sdk/installing/adding-packages.html">Adding Platforms
|
|
|
|
|
and Packages</a>.</p></li>
|
2012-03-02 18:02:43 -08:00
|
|
|
|
<li>Execute:
|
|
|
|
|
<pre class="no-pretty-print">
|
|
|
|
|
android create project --target <target-id> --name MyFirstApp \
|
2012-07-19 21:11:49 -07:00
|
|
|
|
--path <path-to-workspace>/MyFirstApp --activity MainActivity \
|
|
|
|
|
--package com.example.myfirstapp
|
2012-03-02 18:02:43 -08:00
|
|
|
|
</pre>
|
|
|
|
|
<p>Replace <code><target-id></code> with an id from the list of targets (from the previous step)
|
|
|
|
|
and replace
|
|
|
|
|
<code><path-to-workspace></code> with the location in which you want to save your Android
|
|
|
|
|
projects.</p></li>
|
|
|
|
|
</ol>
|
|
|
|
|
|
2014-04-01 10:46:16 -07:00
|
|
|
|
<p>Your Android project is now a basic "Hello World" app that contains some default files.
|
2014-03-12 16:02:51 -07:00
|
|
|
|
To run the app, continue to the <a href="running-app.html">next lesson</a>.</p>
|
2012-03-02 18:02:43 -08:00
|
|
|
|
|
|
|
|
|
<p class="note"><strong>Tip:</strong> Add the <code>platform-tools/</code> as well as the
|
|
|
|
|
<code>tools/</code> directory to your <code>PATH</code> environment variable.</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|