Разработка Android-приложений в деталях - Тимур Сергеевич Машнин 3 стр.


Представление Tree Overview обеспечивает перемещение по диаграмме окна Tree Overview с помощью перетаскивания выделенного прямоугольника окна Tree Overview.

Окно Layout View является блочным представлением GUI-интерфейса. При выборе компонента диаграммы окна Layout View его расположение в GUI-интерфейсе подсвечивается красным цветом в окне Layout View. Также при выборе View-объекта диаграммы окна Layout View, выше его узла появляется небольшое окно с реальным изображением GUI-компонента и информацией о количестве View-объектов, представляющих компонент, и о времени отображения компонента в миллисекундах. При этом свойства выбранного View-объекта диаграммы отображаются в представлении Layout View.

Информация о времени визуализации компонентов GUI-интерфейса приложения помогает найти причину его медленной работы.

Перспектива Pixel Perfect содержит представления Pixel Perfect, Pixel Perfect, Pixel Perfect и Pixel Perfect.



Представление Windows отображает список подключенных Android-устройств без детализации. При выборе устройства и нажатии кнопки Windows панели инструментов окна Windows снимок экрана выбранного Android-устройства открывается в представлениях Windows и Windows. В представлении Windows отображается дерево View-объектов GUI-интерфейса приложения, формирующего снимок экрана. При выборе View-объекта в окне Windows, его расположение обозначается красной рамкой в окне Windows.

КОНЕЦ ОЗНАКОМИТЕЛЬНОГО ОТРЫВКА

Представление Pixel Perfect Loup содержит перекрестье, которое дает информацию о пикселе, находящемся в центре пересечения, включающую в себя HTML-код цвета пикселя, его RGB-значение и координаты. Изображение окна Pixel Perfect Loup можно перемещать мышкой относительно перекрестья. Слайдер Zoom позволяет регулировать увеличение снимка экрана Android-устройства.

Представление Pixel Perfect также содержит перекрестье, расположение которого относительно снимка экрана совпадает с расположением перекрестья окна Pixel Perfect Loup и наоборот. Перекрестье окна Pixel Perfect можно передвигать мышкой, а панель инструментов окна Pixel Perfect дает возможность сохранить снимок экрана как PNG-изображение, а также загрузить поверх снимка экрана другое изображение, представляющее макет GUI-интерфейса приложения, при этом прозрачность загруженного изображения можно регулировать с помощью слайдера Overlay: окна Pixel Perfect Loup.

Возможность загрузки изображений поверх снимка экрана Android-устройства помогает в работе над дизайном GUI-интерфейса разрабатываемого Android-приложения.

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.

КОНЕЦ ОЗНАКОМИТЕЛЬНОГО ОТРЫВКА

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-библиотеки, код и ресурсы которой можно использовать в проекте.

Запуск Android-приложения из среды Eclipse

Перед тем как воспользоваться командой Run As | Android Application контекстного меню окна Package Explorer для тестирования Android-приложения в реальной среде выполнения, необходимо либо подсоединить к компьютеру реальное Android-устройство, либо создать экземпляр Android-эмулятора.

Для тестирования Android-приложения в реальном Android-устройстве нужно зайти в настройки устройства и открыть раздел Приложения. В разделе Приложения отметить флажок Неизвестные источники, затем открыть раздел Разработка и отметить флажок Отладка USB. После чего инсталлировать драйвер устройства на компьютер и подсоединить устройство к компьютеру. В результате среда Eclipse произведет опознание устройства, которое отобразится в окне Devices (команда Window | Show View | Android | Devices).

Для запуска Android-приложения выберем команду Run As | Run Configurations контекстного меню окна Package Explorer и в разделе приложения во вкладке Target отметим флажок Always prompt to pick device. Нажмем кнопку Run, в окне Android Device Chooser выберем устройство и нажмем кнопку OK. В результате Android-приложение будет инсталлировано и запущено в реальном Android-устройстве. Нажав кнопку Screen Capture панели инструментов окна Devices можно сделать снимок экрана реального Android-устройства.

Назад Дальше