Структура Android-приложения

Структура Android-приложения

Хотя размеры и сложность Android-приложений могут существенно различаться, их структура все-таки похожа.

На рис. 2.13 показана структура созданного выше приложения “Hello World!”. Android-приложения содержат обязательные и необязательные компоненты. Все они перечислены в табл. 2.2.

Как видно в табл. 2.2, Android-приложение состоит из трех основных частей: дескриптора приложения, коллекции различных ресурсов и исходного кода приложения. Если пока не касаться файла AndroidManifest.xml, то Android- приложения можно рассматривать просто: некоторая бизнеслогика реализована в коде, а все остальное содержится в ресурсах. Эта базовая структура похожа на базовую структуру J2EE-приложений, где ресурсам соответствуют JSP-страницы, бизнес-логике — сервлеты, а файлу AndroidManifest.xml — файл web. ::ml. Рис. 2.13. Структура приложения “Hello World!

Модель разработки J2EE можно также сравнить с моделью разработки Android. В J2EE представления создаются с помощью языка разметки. В Android принят этот же подход, хотя языком разметки служит XML. Так удобнее, поскольку при этом не приходится жестко кодировать представления приложения — для изменения внешнего вида и поведения приложения достаточно модифицировать его разметку.

Следует упомянуть о некоторых ограничениях на ресурсы. Во-первых, Android поддерживает только линейные списки файлов в предопределенных подпапках папки res. То есть он не поддерживает, к примеру, папки, вложенные в папку layout (или любую другую подпапку папки res). Во-вторых, имеется некоторое сходство папок assets и raw, находящихся в папке res. Обе могут содержать двоичные файлы, но файлы в папке res считаются ресурсами, а в папке assets — нет. Поэтому файлы в папке raw локализуются, доступны через идентификаторы ресурсов и т.д. А содержимое папки assets считается контентом общего назначения, на который не распространяются ограничения и поддержка ресурсов. Обратите внимание, что поскольку содержимое папки assets не считается ресурсами, в ней можно размещать произвольную иерархию папок и файлов. (Более подробно ресурсы рассматриваются в главе 3.)

На заметку! Вы могли уже заметить, что в Android интенсивно используется XML. Как известно, XML — очень “раздутый” формат данных, поэтому возникает вопрос: стоит ли использовать XML, если речь идет о работе на устройстве с ограниченными ресурсами? Но оказывается, что XML-файлы, создаваемые во время разработки, компилируются в двоичные файлы с помощью средства Android Asset Packaging Tool (AAPT). Таким образом, после установки приложения на устройстве файлы на этом устройстве хранятся в двоичном виде. При необходимости во время выполнения файл читается непосредственно в двоичной форме и не переводится обратно в XML. Это дает двойной выигрыш: удобство работы с XML и экономия ценных ресурсов устройства.

Поделиться в соц. сетях

Опубликовать в Google Buzz
Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники
Опубликовать в Яндекс

Добавить комментарий