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


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

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

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

© Тимур Сергеевич Машнин, дизайн обложки, 2016


Введение

Пригласить автора в проект [битая ссылка] admin@tmsoftstudio.com

Разработку Android-приложений можно вести как в среде Eclipse, так и в среде Android Studio. Хотя среда Android Studio является официально поддерживаемой средой разработки, среда Eclipse не теряет актуальности из-за своей универсальности в разработке Java-приложений самого широкого спектра применений.

Поддержку разработки Android-приложений в среде Eclipse обеспечивает Eclipse-плагин Android Development Tools (ADT) (http://developer.android.com/sdk/eclipse-adt.html).

ADT-плагин помогает создать Android-проект, разработать UI-интерфейс приложения на основе программного интерфейса Android Framework API, отладить Android-приложение и подготовить подписанный файл. apk к публикации.

Установка ADT плагина

Для установки ADT-плагина откроем среду Eclipse IDE for Java EE Developers и в меню Help выберем команду Install New Software. В списке Work with: нажмем кнопку Add, в поле Name: введем имя плагина ADT, а в поле Location:  адрес https://dl-ssl.google.com/android/eclipse/ хранилища плагина, нажмем кнопку OK, в мастере Install отметим флажок Developer Tools и нажмем кнопку Next.



После установки ADT-плагина и перезапуска среды Eclipse может открыться окно приложения Android SDK Manager набора разработчика Android SDK.



Сам по себе дистрибутив набора Android SDK (http://developer.android.com/sdk/index.html) включает в себя набор инструментов SDK Tools, SDK Platform-tools, а также приложения AVD Manager и SDK Manager.

Приложение SDK Manager дает возможность устанавливать и обновлять компоненты набора Android SDK, а также запускать приложение AVD Manager и управлять URL-адресами дополнений.

Приложение SDK Manager можно также запустить из среды Eclipse с помощью команды Android SDK Manager меню Window перспективы Java.

Набор инструментов SDK Tools обеспечивает отладку и тестирование Android-приложений. Набор инструментов SDK Platform-tools обеспечивает поддержку самой последней версии Android-платформы и включает в себя инструмент Android Debug Bridge (adb), позволяющий взаимодействовать с эмулятором или Android-устройством. Приложение AVD Manager предоставляет GUI-интерфейс для моделирования различных конфигураций Android-устройств, используемых Android-эмулятором запуска приложений в среде выполнения Android. Набор Android Build Tools обеспечивает сборку кода Android-приложения.

Для разработки Android-приложений требуется установка конкретной Android-платформы, включающей в себя библиотеки платформы, системные изображения, образцы кода, оболочки эмуляции.

Поэтому, используя приложение SDK Manager, установим последнюю возможную версию Android-платформы и наиболее распространенную или минимальную версию Android-платформы. Обратная совместимость между максимальной и минимальной версиями осуществляется с помощью библиотеки Android Support Library каталога Extras.

Дополнительно можно загрузить другие версии Android-платформы, документацию, примеры и различные дополнения набора Android SDK.

Различные версии API Android-платформы отличаются друг от друга наличием новых пакетов, а также изменениями в существующих пакетах.

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

Описание ADT-плагина

В результате установки ADT-плагина в команде New меню File среды Eclipse появится раздел Android, содержащий следующие мастера:

Android Activity  создает класс, расширяющий класс android.app.Activity и представляющий экран приложения.

Android Application Project  обеспечивает создание проекта Android-приложения.

Android Icon Set  позволяет создать набор значков приложения:

Launcher Icons  значок, представляющий приложение.

Action Bar and Tab Icons (Android 3.0+)  значки элементов панели действий пользователя для платформы версии 3.0 и выше.

Notification Icons  значки уведомлений панели состояния.

Pre-Android 3.0 Tab Icons  значки элементов панели действий пользователя для платформы версии ниже 3.0.

Pre-Android 3.0 Menu Icons  значки меню для платформы версии ниже 3.0.

Android Object  создает различные компоненты, такие как Activity, Widget, Fragment, Receiver, Provider, Service и др.

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

Android Project from Existing Code  импорт проекта приложения.

Android Sample Project  при условии установки с помощью SDK Manager пакета примеров Samples for SDK, позволяет создать проект выбранного примера Android-приложения.

Android Test Project  для выбранного Android-проекта создает основу набора тестов на базе каркаса Android testing framework, являющегося расширением платформы тестирования JUnit.

Android XML File  обеспечивает создание таких ресурсов приложения как:

Layout  XML-описание GUI-интерфейса Activity-компонента.

Values  XML-файл, содержащий набор текстовых строк, стилей, различного рода значений, используемых приложением.

Drawable  XML-файл, формирующий отображаемую на экране графику.

Menu  XML-файл, определяющий меню приложения.

Color List  XML-файл, определяющий набор цветов для различных состояний GUI-компонента.

Property Animation  XML-файл, задающий анимацию свойств объекта.

Tween Animation  XML-файл, задающий анимацию View-компонента (вращение, исчезновение, перемещение и масштабирование).

AppWidgetProvider  XML-файл, содержащий метаданные для миниатюрного приложения App Widget, как правило размещаемого на главном экране Home Screen.

Preference  XML-описание GUI-интерфейса PreferenceActivity-операции, позволяющей пользователю персонифицировать приложение.

Searchable  XML-файл, определяющий настройки GUI-компонента поиска.

Android XML Layout File  аналог мастера Android XML File | Layout.

Android XML Values File  аналог мастера Android XML File | Values.

Template Development Wizard  генерирует код на основе файла шаблона template. xml.



После установки ADT-плагина, в контекстном меню окна Package Explorer появятся следующие команды:

Run As | Android Application  запускает Android-приложение в виртуальном мобильном устройстве, созданным с помощью AVD Manager.

Run As | Android JUnit Test  запускает набор тестов для Android-приложения с использованием виртуального мобильного устройства.

Android Tools | New Test Project  открывает мастер Android Test Project создания набора тестов для Android-приложения.

Android Tools | New Resource File  открывает мастер Android XML File создания ресурсов приложения.

Android Tools | Export Signed Application Package  открывает мастер Export Android Application экспорта пописанного цифровой подписью и готового к публикации Android-приложения.

Android Tools | Export Unsigned Application Package  экспортирует неподписанный для релиза APK-файл Android-приложения.

Android Tools | Display dex bytecode  в окне Eclipse-редактора отображает инструкции байткода, дизассемблированные из DEX-файла, который создается в процессе сборки приложения путем конвертации из Java класс-файлов для выполнения виртуальной машиной Dalvik среды выполнения Android.

Android Tools | Rename Application Package  переименовывает пакет приложения.

Android Tools | Add Support Library  запускает приложение SDK Manager для добавления в путь приложения библиотеки Android Support Package, предоставляющей дополнительный API, не являющийся частью API версии Android-платформы. Другой способ добавления библиотеки Android Support Package  установить библиотеку с помощью раздела Extras приложения SDK Manager, создать папку libs в каталоге проекта, скопировать в нее библиотеку из папки extras\android\support каталога Android SDK и добавить библиотеку в путь приложения используя команду Build Path | Configure Build Path контекстного меню окна Package Explorer.

Android Tools | Fix Project Properties  в случае импорта готового Android-проекта гарантирует правильную его сборку, в частности добавляет в путь приложения необходимые библиотеки.

Android Tools | Run Lint: Check for Common Errors  сканирует Android-проект для поиска потенциальных багов с выводом сообщений о них в окно Lint Warnings.

Android Tools | Clear Lint Markers  очищает окно Lint Warnings.

Android Tools | Add Native Support  добавление поддержки Android NDK.

В меню Windows Workbench-окна появятся команды Android SDK Manager, AVD Manager и Run Android Lint, с помощью которых можно запустить приложения набора SDK Tools и сканирование Android-проекта для поиска потенциальных багов. Данные команды дублируются соответствующими кнопками панели инструментов Workbench-окна.

ADT-плагин добавляет в среду Eclipse перспективы DDMS, Hierarchy View, Pixel Perfect, Tracer for OpenGL ES и XML.

Перспектива DDMS

Перспектива DDMS запускает инструмент отладки Dalvik Debug Monitor Server набора SDK Tools и отображает его GUI-интерфейс в виде набора Eclipse-представлений, обеспечивая информацию о работе эмулятора или подсоединенного Android-устройства.

Перспектива DDMS содержит представления Devices, Emulator Control, LogCat, Threads, Heap, Allocation Tracker, Network Statistics, System Information и File Explorer.

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

Представление Devices отображает подключенные Android-устройства. Для каждого подключенного Android-устройства Devices-представление показывает все запущенные на нем процессы, каждый из которых работает в своем экземпляре виртуальной машины Dalvik. Каждый отображаемый процесс представляет инсталлированное и запущенное на Android-устройстве приложение, поэтому идентификация процесса производится по имени пакета приложения. Так как виртуальная машина Dalvik работает поверх ядра Linux, каждый процесс имеет свой Linux-идентификатор, отображаемый в окне Devices после имени пакета. Крайний правый столбец окна Devices показывает номер порта, который DDMS-инструмент назначает для подсоединения Eclipse-отладчика к экземпляру Dalvik-машины с использованием протокола JDWP (Java Debug Wire Protocol). По умолчанию Eclipse-отладчик подсоединяется к статическому порту 8700, на который перенаправляются трафики экземпляров Dalvik-машины от всех портов. DDMS-инструмент взаимодействует с подключенным Android-устройством с помощью инструмента Android Debug Bridge (adb), имеющего клиент-серверную архитектуру. DDMS-инструмент создает adb-клиента, который взаимодействует с adb-демоном (фоновый процесс, работающий в Android-устройстве) через adb-сервер.

Дальше