
В этой статье мы рассмотрим структуру проекта в Android Studio и познакомимся с компонентами любого современного Android приложения.
Когда мы генерируем новый Android проект с помощью Android Studio (например, создание простого Hello Android приложения), автоматически генерируется множество файлов и папок. Давайте рассмотрим каждый из основных компонентов и директорий только что созданного проекта:

Android для начинающих. Урок 2: Структура приложения. Activity и Layout.
Так выглядит пустой, только что сгенерированный Android проект в Android Studio.
Как видно из картинки, Android проект представлен 2 корневыми папками: app и Gradle Scripts. Папка app включает 3 подпапки:
- Папка manifests содержит файлы конфигураций или файлы манифеста приложения
- В папке java находится исходный код приложения.
- Папка res содержит файлы используемых в Android приложении ресурсов (картинки, стили, размерности для различных устройств и т.д.)
А теперь подробнее о каждой папке:
Что такое AndroidManifest.xml файл
Файл AndroidManifest.xml является одним из самых важных в Android проекте. В нем содержится информация о пакетах приложения, компонентах типа Activity , Service (и других пока что не знакомых нам компонентах, о которых я расскажу в следующих статьях).
Файл AndroidManifest.xml выполняет следующие задачи:
- Предоставляет разрешения приложению на использование или доступ к другим компонентам системы.
- Определяет как будут запускаться, например, Activity (какие фильтры использовать).
Папка java в Android проекте
Папка java содержит исходный код приложения. Классы могут быть расположены в различных пакетах, но обязательно внутри папки java.
Зачем нужна папка res
В папке res расположены все используемые приложением ресурсы, включая изображения, различные xml файлы, анимации, звуковые файлы и многие другие. Внутри папки res эти все ресурсы распределены по своим папкам:
- Папка drawable содержит файлы с изображениями, которые будет использоваться в приложении.
- Папка layout располагает xml файлами, которые используются для построения пользовательского интерфейса Android приложения.
- В папке menu находятся xml файлы, используемые только для создания меню.
- В mipmap папке хранят только значки приложения. Любые другие drawable элементы должны быть размещены в своей папке.
- values хранит те xml файлы, в которых определяются простые значения типа строк, массивов, целых чисел, размерностей, цветов и стилей.
Сценарии Gradle в Android Studio
Скрипты Gradle используются для автоматизации сборки проекта. Android Studio выполняет сборку приложения в фоновом режиме без какого-либо вмешательства со стороны разработчика. Этот процесс сборки осуществляется с использованием системы Gradle — инструментария для автоматической сборки с помощью набора конфигурационных файлов. Gradle скрипты написаны на языке groove .
Основы Android: Структура проекта в Android Studio
Папка .idea
Папка .idea на картинке не видна, но если выбрать закладку Project Files, то она появится. Среда разработки Eclipse использует файл project.properties для настройки метаданных проекта. В Android Studio этим занимается папка .idea . Это означает, что метаданные конкретного проекта хранятся в Android Studio.
Сегодня мы рассмотрели основные компоненты структуры проекта в Android Studio.
Источник: javadevblog.com
Урок 3. Структура приложения
Android. Структура проекта
Для более лучшего понимания Android application я рекомендую ознакомится со структурой проекта и его папками и файлами.
В прошлом уроке мы разобрались как настроить SDK Android и создать первое приложения Hello World. Сейчас я предлагаю познакомится по ближе с приложением на Android и разобрать его структуру, а начнем знакомство мы с создания проекта в Intellij IDEA 12.
И в только что созданном проекте посмотрим во вкладку “Project“:

src – cодержит исходный код приложения.
com.example.StructureProjectApp – это package, наименование которого, указывается при создании проекта.
Main.java – файл исходного кода, в котором описан класс главной Activity.
gen – содержит java файлы, создаваемые автоматически во время разработки приложения. Файлы, находящиеся в папке gen не должны изменяться в ручную!
BuildConfig.java – содержит константу DEBUG, значение константы устанавливается автоматически в зависимости от того, является ли версия текущей сборки приложения, конечной или промежуточной.
Константа позволяет запускать код только в режиме отладки. Файл BuildConfig.java был добавлен после выхода ADT revision 17.
public final class BuildConfig
R.java – хранит уникальные идентификаторы для всех ресурсов приложения (ID).
Имена этих ID – констант совпадают с именами файлов ресурсов. Рассмотрим содержимое XML-файла строковых ресурсов resvaluesstrings.xml :
StructureProjectApp
main.xml – файл описывает компоновку элементов экрана.
assets – папка, позволяющая организовать совершенно произвольную структуру вложенных папок и файлов. Содержимое папки assets не считается ресурсами.
bin – каталог сборки приложения. При компиляции приложения Google Android получается сборка, размещаемая в этом каталоге.
res – содержит структуру папок ресурсов приложения. Наименование каждой папки определяет тип ресурсов, которые она должна содержать.
res/drawable-ldpi предназначается для файлов изображений, которые будут применяться на экранах низкой плотности.
res/values – для строковых ресурсов, цветов и размеров.
res/layout – для файлов компоновки экрана.
В Google Android множество видов ресурсов. Каждый из которых, я буду разбирать по мере создания нашего первого приложения.
AndroidManifest – файл, который указывает точку входа в приложение.
Служит для задания общей информации о приложении. Определения атрибутов приложения. Запроса прав доступа к определенным критическим операциям и другой информации. Данный файл принято называть файлом описания, или файлом манифеста.
protect.properties – содержит параметры проекта, например версию API. Файл создается автоматически и не может быть удален.
Источник: devcolibri.com