Приветствую, друзья!
В прошлый раз мы создали простое android приложение. Сегодня более подробно рассмотрим структуру созданного проекта.
Папка src – папка, в которую необходимо помещать все исходники (source files т.е. классы, интерфейсы, перечислители и пр. компоненты программы) разделенные по соответствующим пакетам (пакет ~ папка).
Папка gen. Все содержимое данной папки генерируется автоматически. Никогда не редактируйте ее содержимое вручную! Внутри данной папки вы увидите структуру пакетов, аналогичную тому, что Вы создали и в нем лежит пару классов. Нам интересен R.java. Данный класс содержит ссылки на все ресурсы приложения (о ресурсах см. ниже). Повторюсь, что содержимое генерируется автоматически и не нужно ничего менять т.е. данная папка нам не интересна.
Далее идут стандартные библиотеки, необходимые в проекте.
assets может содержать небольшие файлы, необходимые приложению. Это могут быть базы данных, текстуры, скрипты.
В разделе bin находятся все скомпилированные файлы. Этот каталог нам тоже не интересен, за исключением построенного (скомпилированного) приложения, кот можно найти по пути проекта и установить на свой мобильный телефон или планшет (если у Вас андроид, конечно же ;).
libs – каталог с библиотеками. Если Вам понадобятся какие – то дополнительные библиотеки, их необходимо будет добавить в эту директорию и обновить проект.
Папка res содержит ресурсы (res – resources), необходимые Вашему приложению (текстовые строки, отображаемые в интерфейсе приложения, различные графические элементы: иконки, анимации и пр.). Остановимся подробнее на содержании каталога ресурсов т.к. он важен и будет часто использоваться.
В папке drawable содержатся все графические элементы, кот. участвуют в интерфейсе приложения. Но зачем так много папок drawable (hdpi, ldpi, mdpi, ..)? Смысл в том, что андроид поддерживает только 4 расширений экранов. Условно их можно поделить на маленькие, средний, большие, очень большие и очень очень большие. Чтобы интерфейс приложения отображался корректно во всех случаях, необходимо поместить в папки drawable картинку, которая будет называться одинаково но будет иметь различные расширения. В зависимости от экрана устройства, будет подтянута необходимая картинка с нужным форматом.
В каталоге layout хранятся xml файлы, которые являются разметкой экранов. Т.е. для каждого экрана (активности) в этой папке будет хранится разметка интерфейса.
Директория menu хранит разметку для меню. Одно меню – одна очень простая и понятная разметка.
В папку values помещаются многие ресурсы, такие как строки (все строки, которые отображаются в интерфейсе должны быть заданы в соответствующем файле данной директории – strings.xml), числа, константы, цвета, размеры и пр.
AndroidManifest.xml – важнейший файл в структуре android проекта. В нем декларируются все компоненты приложения, его имя, разрешения и пр. Более подробное понимаю к Вам придет с практикой. На некоторых ключевых моментах я остановлюсь позже.
Вот мы и рассмотрели основные элементы структуры android приложения. Не огорчайтесь, если не получается что либо запомнить. С практикой придет понимание и вся необходимая информация обязательно отложиться в голове. 😉
Автор Аксёненко Богдан