Once we setup android development environment using android studio and if we create a sample
application using android studio, our project folder structure will be like as shown below. In case if
you are not aware of creating an application using android studio please check this Android Hello
World App.
The Android project structure on the disk might be differs from the above representation. To see the
actual file structure of the project, select Project from the Project dropdown instead of Android.
The android app project will contain a different type of app modules, source code files and resource
files. We will explore all the folders and files in android app.
Java Folder
This folder will contain all the java source code (.java) files which we’ll create during the application
development, including JUnit test code. Whenever we create any new project / application, by
default the class file MainActivity.java will create automatically under the package name
“com.tutlane.helloworld” like as shown below.
res (Resources) Folder
It’s an important folder which will contain all non-code resources, such as bitmap images, UI strings,
XML layouts like as show below.
The res (Resources) will contain a different type of folders those are
Drawable Folder (res/drawable)
It will contains the different type of images as per the requirement of application. It’s a best practice
to add all the images in drawable folder other than app / launcher icons for the application
development.
Layout Folder (res/layout)
This folder will contain all XML layout files which we used to define the user Interface of our
application. Following is the structure of layout folder in android application.
Mipmap Folder (res/mipmap)
This folder will contain app / launcher icons which are used to show on the home screen. It will
contain different density type of icons such as hdpi, mdpi, xhdpi, xxhdpi, xxxhdpi, to use different
icons based on the size of device.
Following is the structure of mipmap folder in android application.
Values Folder (res/values)
This folder will contain a various XML files, such as strings, colors, styles definitions and static array of
strings or integers. Following is the structure of values folder in android application.
Manifests Folder
This folder will contain a manifest file (AndroidManifest.xml) for our android application. This
manifest file will contain information about our application such as android version, access
permissions, metadata, etc. of our application and its components. The manifest file will act as an
intermediate between android OS and our application.
Following is the structure of mainfests folder in android application.
Gradle Scripts
In android, Gradle means automated build system and by using this we can define a build
configuration that apply to all modules in our application. In gradle build.gradle
(Project), build.gradle (Module) are used to build configurations that apply to all our app modules
or specific to one app module.
Following is the structure of Gradle Scripts in android application.
Following are the important files which we need to implement an app in android studio.
Android Layout File (activity_main.xml)
The UI of our application will be designed in this file and it will contain Design and Text modes. It
will exists in layouts folder and the structure of activity_main.xml file in Design mode like as shown
below.