В предидущем уроке мы создали наш первый проект и увидели что Android Studio начала синхронизацию. После завершения синхронизации проекта, Android Studio готова к работе.
В этом уроке мы ознакомимся со структурой проекта. Узнаем где и зачем расположены файлы и папки. Для более удобной навигации по файлам и папкам нам необходимо переключить вид сруктуры наших папок на Project, как показнно в пункте 1 на скриншоте снизу:
Вы переключили вид структуры проекта на Project как показнно в пункте 1 и видите следующие файлы и папки
Меню с переключателями для отображения структуры проекта
MyApplication2 [My Application] - Это название папки (в конце серым видно полный путь) и название приложения. Это те данные, которые Вы ввели при создании проекта.
app - Это папка / модуль в которой лежит исходный код нашего приложения. Это стандартный модуль для приложения. Его можно переименовать в настройках сборщика проекта. Модуль может быть как библиотекой, так и главным отдельным приложением.
gradle - папка, которая содержит в себе сборщик проект. Android использует сборщик Gradle. Также в этой папке лежит файл libs.versions.toml со списком всех библиотек, которые используются в проекте.
build.gradle.kts - Главный файл сборки проекта. По сколько сборщик Gradle умеет собирать разные проекты на разных языках. То именно в этом файле мы указываем что это проект именно Android. В этом же файле указываются плагины для сборщика. Этими плагинами мы можем изменить или добавить функционал сборщика.
gradle.properties - Файл в котором указываются разные переменные для сборщика. В этом файле мы можем указать количество оперативной памяти. Пути к Android SDK. Данные для авторизации плагинов (если используем платные плагины) и т. д.
gradlew / gradlew.bat - это исполняющие файлы запуска сборщика. Для Linux/Unix и для Windows. В основном эти файлы используются для сборки готового продукта если вы хотите передать кому-то ваше готовое приложение то скорее всего вам в терминале выполнить команду - ./gradlew assembleRelease или ./gradlew assembleDebug
settings.gradle.kts - В этом файле настраиваются модули приложения и их зависимости. То есть тут мы настраиваем, где сборщику искать плагины и библиотеки. Да, в пункте 4 мы указываем какой плагин использовать, а в пункте 7 указываем, где этот плагин скачать.
Давайте теперь ознакомимся с папками и файлами внутри папки “app”. Это самая главная папка нашего проекта. Давайте ознакомимся, где и как расположен исходный код - на скриншоте ниже:
и так по списку:
libs - это папка в которую мы кладем готовые скомпилированные файлы / библиотеки. Это могут быть как .jar(Java / Kotlin)так и .aar (Android)
src - папка, содержащая исходный код для приложения и тестов.
androidTest внутри папки src - это папка где находятся файлы для юнит тестов которые выполняются на эмуляторе и настоящем устройстве
main - главная папка, где находится исходный код написанный на Java / Kotlin / C / C++ и ресурсы приложения.
test внутри папки src - это папка где находятся файлы для юнит тестов которые выполняются на эмуляторе и настоящем устройстве
build.gradle.kts - Это файл настройки сборщика для нашего модуля. Да. Есть такой же файл для всего проекта. Но этот файл в пункте 6 отвечает только за сборку текущего модуля. А файл в корне всего проекта - за сборку всех модулей разом.
Ну и последнее что нам осталось рассмотреть. Это что за папки и файлы расположены внутри main. Смотрим на скриншот и читаем:
И так:
java - Именно в этой папке хранится наш Kotlin / Java код.
res - Это папка содержащая разные ресурсы которые идут по списку ниже.
drawable - Это папка с нашими картинками. Картинки могут быть как png, так и вектор, описанный специальным стандартом для Android (Vector Drawable) при помощи XML
layout - папка, содержащая разметку наших экранов. Тут описываются элементы и их расположение на экране. Опять же при помощи XML
mipmap и ее модификации - в каждой папке хранится всего по 2 файла. Иконка квадратная и иконка круглая. Именно эти иконки отображаются на главном экране Android. Именно эта иконка является иконкой вашего приложения. А модификации — это то, что Вы видите через дефис “-”. То есть это могут быть разные размеры экранов, разная версия Android и даже просто разный язык устройства.
values и ее модификация - папка содержащая различного рода переменные. Это строки для нашего приложения, константы, разные цвета. Настройка темы приложения и т. д.
xml - папка очень похожа на папку values. Но тут хранятся не наши константы и переменные. А файлы конфигурации нашего приложения. А конкретно поведение для HTTP / HTTPS, можно ли и как именно делать бэкап нашей апп, настройки доступа к файлам нашего приложения и т. д.
На этом все.. Мы бегло пробежались по файлам и папкам в нашем приложении.. В следующем уроке мы создадим эмулятор, подключим телефон и запустим свеже созданное приложение.