<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE reference PUBLIC "-//OASIS//DTD DITA Reference//EN" "../dtd/reference.dtd">
<reference id="u_new-proj_android" xml:lang="en-us">
  <title>New Android Project wizard</title>
  <shortdesc>Creates a MOTODEV Studio for Android project.</shortdesc>
  <prolog>
    <metadata>
      <keywords>
        <!--<indexterm></indexterm>-->
      </keywords>
    </metadata>
  </prolog>
  <refbody>
    <section>The newly created project can be a basic one, or can be pre-populated from an SDK sample or from an
      existing Android project.<simpletable>
        <strow>
          <stentry><uicontrol>Project name</uicontrol></stentry>
          <stentry>A name for the newly created Eclipse project. Note that MOTODEV Studio will create a folder for your
            project using this name; therefore, the name you supply must follow the rules for filenames on your host
            operating system.</stentry>
        </strow>
        <strow>
          <stentry><uicontrol>Create new project</uicontrol></stentry>
          <stentry>Creates a basic "Hello World"-style project.</stentry>
        </strow>
        <strow>
          <stentry><uicontrol>Create new project using sample</uicontrol></stentry>
          <stentry>Creates a project based upon one of the samples included with the Android SDK. You will be asked to
            specify the base sample in the wizard's next dialog.</stentry>
        </strow>
        <strow>
          <stentry><uicontrol>Create project from existing source</uicontrol></stentry>
          <stentry>Opens an existing project in place, without copying it to your workspace.</stentry>
        </strow>
        <strow>
          <stentry><uicontrol>Use default location</uicontrol></stentry>
          <stentry>Indicates whether projects should be created in the current workspace. To specify a different
            location, clear this option and then use the <uicontrol>Location</uicontrol> field to specify the folder in
            which the project is to be created.</stentry>
        </strow>
        <strow>
          <stentry><uicontrol>Location</uicontrol></stentry>
          <stentry>Specifies the folder in which projects are created. By default projects are created in the current
            workspace. Clear the <uicontrol>Use default location</uicontrol> option to specify a different
          location.</stentry>
        </strow>
        <strow>
          <stentry><uicontrol>Target</uicontrol></stentry>
          <stentry>Specifies the Android platform against which the application is to be built. Note that you cannot
            specify a target when creating a project from existing source.</stentry>
        </strow>
        <strow>
          <stentry><uicontrol>Application name</uicontrol></stentry>
          <stentry>The name of your application as it will appear to the user on the Android device. Note that if you
            are creating a project based on a sample or on existing source, you cannot change this field. </stentry>
        </strow>
        <strow>
          <stentry><uicontrol>Package name</uicontrol></stentry>
          <stentry>The full Java package name for your application. Note that this needs to be a unique identifier; use
            standard domain-style naming.</stentry>
        </strow>
        <strow>
          <stentry><uicontrol>Activity name</uicontrol></stentry>
          <stentry>The name for the application's main activity. This is the name for the class stub that will be
            generated by the plugin.</stentry>
        </strow>
        <strow>
          <stentry><uicontrol>Min SDK version</uicontrol></stentry>
          <stentry>A value that corresponds to the minimum required API level. This value determines whether or not your
            application will run on a given Android device: if the <uicontrol>Min SDK version</uicontrol> is greater
            than the level supported by the device, the application will not run on that device. This field is
            automatically set when you specify a <uicontrol>Target</uicontrol>, but can be overridden.</stentry>
        </strow>
        <strow>
          <stentry><uicontrol>Add native support</uicontrol></stentry>
          <stentry>If this project will have native components and you will be using MOTODEV Studio for Android to
            manage and build those components (along with the non-native components, such as Java source files and xml
            layout files), select this option. Note that in order to work with native code within MOTODEV Studio for
            Android you must have the Android NDK properly installed and configured. Also note that you can add native
            support to an existing Android project; you needn't add it when you first create the project.</stentry>
        </strow>
        <strow>
          <stentry><uicontrol>Obfuscate Java classes</uicontrol></stentry>
          <stentry>Enables (if selected) or disables obfuscation of the Java classes in the new Android project whenever
            you build it for release.</stentry>
        </strow>
      </simpletable></section>
  </refbody>
</reference>
