Create a Project with Android Studio
- In Android Studio, create a new project:
- If you don't have a project opened, in the Welcome screen, click New Project.
- If you have a project opened, from the File menu, select New Project. The Create New Project screen appears.
- Fill out the fields on the screen, and click Next.It is easier to follow these lessons if you use the same values as shown.
- Application Name is the app name that appears to users. For this project, use "My First App."
- Company domain provides a qualifier that will be appended to the package name; Android Studio will remember this qualifier for each new project you create.
- Package name is the fully qualified name for the project (following the same rules as those for naming packages in the Java programming language). Your package name must be unique across all packages installed on the Android system. You can Edit this value independently from the application name or the company domain.
- Project location is the directory on your system that holds the project files.
- Under Select the form factors your app will run on, check the box for Phone and Tablet.
- For Minimum SDK, select API 8: Android 2.2 (Froyo).The Minimum Required SDK is the earliest version of Android that your app supports, indicated using the API level. 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 Supporting Different Platform Versions).
- Leave all of the other options (TV, Wear, and Glass) unchecked and click Next.
- Under Add an activity to <template>, select Blank Activity and click Next.
- Under Customize the Activity, change the Activity Name toMyActivity. The Layout Name changes to activity_my, and theTitle to MyActivity. The Menu Resource Name is menu_my.
- Click the Finish button to create the project.
Activities
An activity is one of the distinguishing features of the Android framework. Activities provide the user with access to your app, and there may be many activities. An application will usually have a main activity for when the user launches the application, another activity for when she selects some content to view, for example, and other activities for when she performs other tasks within the app. See Activities for more information.
Your Android project is now a basic "Hello World" app that contains some default files. Take a moment to review the most important of these:
app/src/main/res/layout/activity_my.xml
- This XML layout file is for the activity you added when you created the project with Android Studio. Following the New Project workflow, Android Studio presents this file with both a text view and a preview of the screen UI. The file contains some default interface elements from the material design library, including the app bar and a floating action button. It also includes a separate layout file with the main content.
app/src/main/res/layout/content_my.xml
- This XML layout file resides in
activity_my.xml
, and contains some settings and aTextView
element that displays the message, "Hello world!". app/src/main/java/com.mycompany.myfirstapp/MyActivity.java
- A tab for this file appears in Android Studio when the New Project workflow finishes. When you select the file you see the class definition for the activity you created. When you build and run the app, the
Activity
class starts the activity and loads the layout file that says "Hello World!" app/src/main/AndroidManifest.xml
- The manifest file describes the fundamental characteristics of the app and defines each of its components. You'll revisit this file as you follow these lessons and add more components to your app.
app/build.gradle
- Android Studio uses Gradle to compile and build your app. There is a
build.gradle
file for each module of your project, as well as abuild.gradle
file for the entire project. Usually, you're only interested in thebuild.gradle
file for the module, in this case theapp
or application module. This is where your app's build dependencies are set, including thedefaultConfig
settings:
compiledSdkVersion
is the platform version against which you will compile your app. 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 SDK Manager.) You can still build your app to support older versions, but setting this to the latest version allows you to enable new features and optimize your app for a great user experience on the latest devices.applicationId
is the fully qualified package name for your application that you specified during the New Project workflow.minSdkVersion
is the Minimum SDK version you specified during the New Project workflow. This is the earliest version of the Android SDK that your app supports.targetSdkVersion
indicates the highest version of Android with which you have tested your application. 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 and thereby take advantage of new platform features. For more information, read Supporting Different Platform Versions.
See Building Your Project with Gradle for more information about Gradle.
Note also the
/res
subdirectories that contain the resources for your application:drawable-<density>/
- Directories for drawable resources, other than launcher icons, designed for various densities.
layout/
- Directory for files that define your app's user interface like
activity_my.xml
, discussed above, which describes a basic layout for theMyActivity
class. menu/
- Directory for files that define your app's menu items.
mipmap/
- Launcher icons reside in the
mipmap/
folder rather than thedrawable/
folders. This folder contains theic_launcher.png
image that appears when you run the default app. values/
- Directory for other XML files that contain a collection of resources, such as string and color definitions.
THAT'S ALL