Разработка Android-приложений в деталях

Тимур Сергеевич Машнин

В книге приведены некоторые рецепты разработки Android-приложений и их примеры, рассмотрена работа в среде Eclipse и Android Studio, разработка мобильных сайтов и гибридных мобильных приложений.

Оглавление

Wizard мастера ADT плагина

Мастер Android Project

Для создания Android-приложения откроем среду Eclipse с инсталлированным ADT-плагином и в меню File выберем команду New Other Android Android Application Project и нажмем кнопку Next.

Введем имя приложения, отображаемое в устройстве, имя проекта, имя пакета. Выберем минимальную версию SDK, предпочтительную версию SDK, версию SDK относительно которой приложение будет компилироваться, тему приложения и нажмем кнопку Next. Оставим отмеченными флажки Create custom launcher icon и Create activity и нажмем кнопку Next. Определим значок приложения и нажмем кнопку Next. Выберем создаваемый Activity-компонент и нажмем кнопку Next:

Blank Activity — экран с надписью «Hello world!».

Blank Activity with Fragment — экран с фрагментом с надписью «Hello world!».

Empty Activity — все равно экран с надписью «Hello world!».

Fullscreen Activity — экран, нажатие на который вызывает переключение между обычным и полноэкранным режимами.

Master/Detail Flow — экран с боковой панелью меню.

Navigation Drawer Activity — экран с двумя фрагментами, панелью навигации и контентом.

Tabbed Activity — экран с вкладками и типом навигации: с помощью жеста Swipe Views (ViewPager), с помощью панели закладок Action Bar Tabs (with ViewPager), с помощью выпадающего списка Action Bar Spinner.

Определим имя Activity-компонента, имя компоновочного файла res/layout/activity_main. xml и нажмем кнопку Finish — в результате будет сгенерирована основа проекта Android-приложения.

Модель программирования Android-приложений основывается не на конструкции с главным классом приложения, имеющим точку входа — статический метод main (), а является компонентной моделью. Android-приложение может состоять из одного или нескольких компонентов, объявленных в файле манифеста приложения AndroidManifest. xml и относящихся к четырем типам:

Activity — расширение класса android.app.Activity, обеспечивающее создание одного окна на экране Android-устройства с формированием в нем GUI-интерфейса.

Service — расширение класса android.app.Service, обеспечивающее выполнение операций без предоставления GUI-интерфейса.

BroadcastReceiver — расширение класса android.content.BroadcastReceiver, отвечающее за прослушивание широковещательных сообщений с запуском других компонентов Android-приложения или выводом уведомлений пользователю в строку статуса.

ContentProvider — расширение класса android.content.ContentProvider, обеспечивающее хранение и извлечение общих данных.

Существующая версия ADT-плагина при создании Android-проекта предлагает формирование основы только Activity-компонента.

Основа самого простого Android-проекта, сгенерированная средой Eclipse, состоит из следующих узлов окна Package Explorer:

src — содержит пакет класса, расширяющего класс android.app.Activity.

gen — содержит R-класс, автоматически генерируемый инструментом aapt набора SDK Platform-tools из существующих ресурсов проекта для программного к ним доступа, а также класс BuildConfig, содержащий константу DEBUG, которая со значением true определяет запуск приложения в режиме отладки. При экспорте подписанного приложения значение константы DEBUG автоматически становится false.

Android х.х — библиотека Android-платформы, на основе которой создается приложение.

Android Private Libraries — дополнительная библиотека android-support, обеспечивающая обратную совместимость с предыдущими версиями Android API.

аssets — каталог предназначен для хранения данных приложения, доступ к которым осуществляется с помощью класса android.content.res.AssetManager. Отличие данного каталога от каталога res заключается в том, что он не должен иметь строго преопределенной структуры, которая для каталога res обеспечивает автоматическую генерацию R-класса.

bin — каталог сборки приложения.

libs — содержит JAR-файл библиотеки android-support.

res — содержит ресурсы приложения, доступ к которым осуществляется с помощью R-класса, и имеет строго предопределенную структуру:

animator — XML-файлы для создания объектов анимации.

color — XML-файлы, определяющие цветовую гамму View-объектов.

drawable — PNG, JPEG, GIF, 9-PNG и XML-файлы, формирующие графику.

layout — XML-файлы для формирования структуры GUI-интерфейса Activity-объектов.

menu — XML-файлы, описывающие меню приложения.

raw — каталог предназначен для хранения таких данных приложения как файлов в формате MP3 или Ogg.

values — XML-файлы для хранения строк, стилей, чисел, размеров и др., используемых приложением, в виде пар имя-значение.

xml — различные конфигурационные и ресурсные XML-файлы.

AndroidManifest. xml — файл манифеста приложения, определяющий запуск Android-приложения средой выполнения Android и описывающий Android-компоненты приложения, права пользователя, минимальный уровень API Android-платформы, необходимый для запуска приложения, требуемые опции Android-устройства и др.

ic_launcher-web.png — значок приложения для магазина Google Play Store.

proguard.cfg — файл инструмента proguard набора SDK Tools, обеспечивающего сокращение, оптимизацию и обфускацию кода.

project.properties — содержит установки проекта.

Созданный Android-проект можно перевести в статус библиотеки, предоставляющей исходный код и ресурсы для других Android-проектов. При этом Android-библиотека не может содержать ресурсы в каталоге аssets и версия Android-платформы библиотеки должна быть меньше или равна версии Android-платформы проекта, использующего библиотеку.

Для создания Android-библиотеки нужно в окне Package Explorer нажать правой кнопкой мышки на узле Android-проекта и в контекстном меню выбрать команду Properties. Далее в разделе Android отметить флажок Is Library и нажать кнопку OK.

Для использования созданной Android-библиотеки другим Android-проектом необходимо в окне Package Explorer нажать правой кнопкой мышки на узле Android-проекта и в контекстном меню выбрать команду Properties. Далее в разделе Android нажать кнопку Add и выбрать Android-библиотеку.

В результате в окне Package Explorer в Android-проект добавится узел Library Projects, содержащий временный JAR-файл Android-библиотеки, код и ресурсы которой можно использовать в проекте.

Смотрите также

а б в г д е ё ж з и й к л м н о п р с т у ф х ц ч ш щ э ю я