Книга - Разработка Android-приложений в деталях
Разработка Android-приложений в деталях
Тимур Сергеевич Машнин
В книге приведены некоторые рецепты разработки Android-приложений и их примеры, рассмотрена работа в среде Eclipse и Android Studio, разработка мобильных сайтов и гибридных мобильных приложений.
Разработка Android-приложений в деталях
Тимур Сергеевич Машнин
Дизайнер обложки Тимур Сергеевич Машнин
© Тимур Сергеевич Машнин, 2020
© Тимур Сергеевич Машнин, дизайн обложки, 2020
ISBN 978-5-4483-0450-7
Создано в интеллектуальной издательской системе Ridero
Введение
Разработку 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-сервер.
Панель инструментов представления Devices содержит следующие кнопки:
(Debug the selected process, …) – подсоединяет процесс, представляющий Android-приложение с открытым в среде Eclipse проектом, к Eclipse-отладчику, для работы с которым используется перспектива Debug.
(Update Heap) – включает информацию об использовании динамической памяти для процесса.
(Dump HPROF file) – создает снимок динамической памяти в виде HPROF-файла. В случае Android-устройств версии 2.1 и ранее для создания HPROF-файла требуется наличие SD-карты памяти, а также разрешения
(Cause GC) – вызывает сборщика мусора, что влечет за собой сборку данных о динамической памяти.
(Update Threads) – включает информацию о запущенных потоках для выбранного процесса.
(Start Method Profiling) и (Stop Method Profiling) – запускает и останавливает запись информации о выполнении методов приложения в Trace-файл, который после остановки записи открывается в Traceview-окне, отображающем журнал выполнения в виде двух панелей: Timeline Panel – с помощью цветовой гаммы и шкалы времени описывает старт и остановку выполнения метода в потоке, Profile Panel – показывает детали выполнения методов. В случае Android-устройств версии 2.1 и ранее для создания Trace-файла требуется наличие SD-карты памяти, а также разрешения
Для Activity-компонента стиль устанавливается с помощью атрибута android: theme="@style/ActivityTheme» тэга
Применение стиля к Activity-компоненту может существенно менять отображение его GUI-интерфейса на экране Android-устройства. Например, при установке стиля Theme. Dialog, Activity-компонент отображается в виде диалогового окна, не заполняя полностью весь экран.
Кнопки вкладки Graphical Layout, расположенные ниже панели кнопок с меню, обеспечивают регулировку значений атрибутов android: layout_width, android: layout_height и др. корневого контейнера, а также эмуляцию размера экрана и увеличение-уменьшение изображения экрана.
Palette-палитра вкладки Graphical Layout позволяет визуально заполнить GUI-интерфейс Activity-компонента View-компонентами с помощью перетаскивания элементов Palette-палитры в область просмотра конечного вида GUI-интерфейса.
Кроме того, вкладка Graphical Layout имеет контекстное меню, открывающееся при нажатии правой кнопкой мышки на View-компоненте в окне просмотра конечного вида GUI-интерфейса, с помощью опций которого можно изменять свойства выбранного View-компонента.
Редактор файла AndroidManifest. xml ADT-плагина
Для файла манифеста AndroidManifest. xml ADT-плагин также предоставляет визуальный графический редактор.
Редактор файла AndroidManifest. xml ADT-плагина имеет вкладки Manifest, Application, Permissions, Instrumentation и AndroidManifest. xml.
Набор опций вкладок Manifest и Application зависит от версии Android-платформы, на основе которой создан Android-проект.
Вкладка Manifest ADT-редактора файла AndroidManifest. xml содержит следующие поля и ссылки:
Package – редактирование имени пакета Android-приложения, значение атрибута package элемента
Version Code – редактирование версии Android-приложения, значение атрибута android: versionCode элемента
Version name – редактирование строки, представляющей пользователю версию Android-приложения, значение атрибута android: versionName элемента
Shared user id – если данное приложение является одним из модулей большого Android-приложения, установка данного идентификатора одинаковым для всех модулей с подписанием их одним сертификатом дает взаимный доступ к данным, значение атрибута android: sharedUserId элемента
Shared user label – отображаемая пользователю метка sharedUserId-идентификатора, значение атрибута android: sharedUserLabel элемента
Раздел Manifest Extras – с помощью кнопки Add обеспечивает добавление в манифест следующих тэгов:
Exporting – содержит ссылки Use the Export Wizard и Export an unsigned APK, запускающие опции экспорта подписанного и неподписанного для публикации Android-приложения.
Links – содержит ссылки Application (открывает вкладку Application редактора), Permission (открывает вкладку Permission редактора), Instrumentation (открывает вкладку Instrumentation редактора), XML Source (открывает вкладку AndroidManifest. xml редактора), Documentation (пытается открыть локализованную страницу документации).
Вкладка Application ADT-редактора файла AndroidManifest. xml помогает редактировать тэг
Раздел Application Toggle вкладки Application содержит ссылку application – открывает страницу документации элемента
Раздел Application Attributes вкладки Application определяет атрибуты элемента
Name – при нажатии открывает мастер создания Java-класса, расширяющего класс android. app. Application. Созданный Application-класс указывается в качестве значения атрибута android: name тэга
Theme – общий для Activity-компонентов стиль, указываемый как значение атрибута android: theme тэга
Тип ресурса Drawable
Для создания графического ресурса Android-приложения в окне Project Explorer нажмем правой кнопкой мышки на узле проекта и в контекстном меню выберем команду New | Other | Android | Android XML File, нажмем кнопку Next – в результате откроется окно мастера, в списке Resource Type которого выберем тип Drawable.
Поле File: мастера создания графического ресурса предлагает ввести имя нового XML-файла, который затем появится в каталоге res/drawable Android-проекта и будет доступен в Java-коде с помощью сгенерированного класса R.drawable.filename или в XML-коде с помощью ссылки @ [package: ] drawable/filename.
Раздел Root Element: мастера создания графического ресурса предлагает выбрать корневой XML-элемент ресурса:
После ввода имени нового графического ресурса, выбора его корневого элемента и нажатия кнопки Next, появляется окно Choose Configuration Folder, позволяющее выбрать спецификатор папки drawable, обеспечивающий поддержку специфической конфигурации Android-устройства, в соответствии с которой папка drawable с нужным спецификатором будет выбрана Android-системой для загрузки при выполнении кода приложения.
После создания нового графического ресурса он будет открыт в XML-редакторе кода.
Тип ресурса Menu
Android-платформа обеспечивает создание трех видов меню для Android-приложения – меню опций, которое открывается при нажатии кнопки MENU устройства или для Android-версии 3.0 и выше элементы которого могут быть помещены в ActionBar-панель, контекстное меню View-компонента и подменю элемента меню.
Все три вида меню могут быть созданы программным способом или на основе XML-описания. Создание меню на основе XML-описания является предпочтительным способом, так как позволяет разделить содержимое меню и его бизнес-логику. После создания XML-описания меню для меню опций необходимо в классе Activity-компонента переопределить метод onCreateOptionsMenu (), в котором необходимо создать программный объект из XML-описания, используя метод MenuInflater.inflate (), а также переопределить метод onOptionsItemSelected (), обрабатывающий выбор элемента меню.
Для контекстного меню необходимо в методе onCreate () Activity-компонента зарегистрировать View-компонент как имеющий контекстное меню с помощью метода registerForContextMenu (), переопределить метод onCreateContextMenu (), в котором необходимо создать программный объект из XML-описания, используя метод MenuInflater.inflate (), а также переопределить метод onContextItemSelected (), обрабатывающий выбор элемента меню. Подменю элемента меню определяется простым вложением его XML-описания в тэг элемента меню.
Для создания XML-описания меню Android-приложения в окне Project Explorer нажмем правой кнопкой мышки на узле проекта и в контекстном меню выберем команду New | Other | Android | Android XML File, нажмем кнопку Next – в результате откроется окно мастера, в списке Resource Type которого выберем тип Menu.
Поле File: мастера создания Menu-файла предлагает ввести имя нового файла XML-описания меню, который затем с расширением. xml появится в каталоге res/menu Android-проекта и будет доступен в Java-коде с помощью сгенерированного класса R.menu. [имя Menu-файла] или в XML-коде с помощью ссылки @ [package: ] menu. [имя Menu-файла].
Раздел Root Element: мастера создания Menu-файла показывает, что корневым элементом XML-файла служит тэг
- Жанр: Книги о компьютерах
- Язык: Книги на русском языке
- Объём: 400 стр. 108 иллюстраций
- Возрастные ограничения: 12+
- ISBN: 9785448304507
- Дата выхода книги: 21 июля 2016
- Версия: 📚 Электронная книга
В книге приведены некоторые рецепты разработки Android-приложений и их примеры, рассмотрена работа в среде Eclipse и Android Studio, разработка мобильных сайтов и гибридных мобильных приложений.
Как скачать книгу - "Разработка Android-приложений в деталях" в fb2, ePub, txt и других форматах?
- Нажмите на кнопку "полная версия" справа от обложки книги на версии сайта для ПК или под обложкой на мобюильной версии сайта
Полная версия книги
- Купите книгу на литресе по кнопке со скриншота
Если книга "Разработка Android-приложений в деталях" доступна в бесплатно то будет вот такая кнопка - Выполните вход в личный кабинет на сайте ЛитРес с вашим логином и паролем.
- В правом верхнем углу сайта нажмите «Мои книги» и перейдите в подраздел «Мои».
- Нажмите на обложку книги -"Разработка Android-приложений в деталях", чтобы скачать книгу для телефона или на ПК.
В разделе «Скачать в виде файла» нажмите на нужный вам формат файла:
Для чтения на телефоне подойдут следующие форматы (при клике на формат вы можете сразу скачать бесплатно фрагмент книги "Разработка Android-приложений в деталях" для ознакомления):
- FB2 - Для телефонов, планшетов на Android, электронных книг (кроме Kindle) и других программ
- EPUB - подходит для устройств на ios (iPhone, iPad, Mac) и большинства приложений для чтения
Для чтения на компьютере подходят форматы:
- TXT - можно открыть на любом компьютере в текстовом редакторе
- RTF - также можно открыть на любом ПК
- A4 PDF - открывается в программе Adobe Reader
Другие форматы:
- Сохраните файл на свой компьютер или телефоне.