печатная A5
722
12+
Delphi. Программирование для Android

Бесплатный фрагмент - Delphi. Программирование для Android

Библиотека FireMonkey


4
Объем:
632 стр.
Текстовый блок:
бумага офсетная 80 г/м2, печать черно-белая
Возрастное ограничение:
12+
Формат:
145×205 мм
Обложка:
мягкая
Крепление:
клей
ISBN:
978-5-4474-7944-2

Введение

Относительно недавно, осенью 2013 года с выходом в свет Embarcadero RAD Studio XE5 язык Delphi совершил очередной эволюционный скачок — у него появилась принципиально новая возможность разработки приложений для платформы Android. Отметим, что современные версии RAD Studio XE5/XE10 позволяют создавать не только приложения для операционной системы компании Google, но и полноценные программные продукты, предназначенные для работы под управлением операционных систем: Microsoft Windows 32/64 и OS X, iOS компании Apple! В основу кроссплатформы положена во всех отношениях уникальная библиотека FireMonkey (FMX).

Книга, которую вы держите в руках, посвящена раскрытию триединой задачи.

Во-первых, в ней изложены ключевые новинки, появившиеся в языке Delphi начиная с версии Delphi 2009 (первая версия Delphi вышедшая из-под крыла компании Embarcadero) и заканчивая Delphi XE10. Речь пойдёт о нововведениях в синтаксисе и семантике языка актуальных как для классической библиотеки VCL, так и для FMX.

Во-вторых, в книге рассматриваются основы кроссплатформенной библиотеки FMX (наиболее показательные классы, компоненты и порядок их применения). Таким образом, представленный материал окажется одинаково полезным не только для программистов, нацеленных на Android, но и для разработчиков всей линейки программных продуктов, поддерживаемых библиотекой FMX.

В-третьих, кроме собственно рассмотрения основ работы с FMX книга знакомит читателя с технологией разработки мобильного приложения для Android с помощью Delphi XE5/XE10. Начиная с особенностей подключения устройства к компьютеру, заканчивая выпуском программного продукта.

Стоит отметить, что книга в большей степени рассчитана на подготовленного программиста, имеющего представление о языке и возможностях так называемых классических версий Delphi. Разработчику, делающему первые шаги в изучении Delphi, кроме того стоит уделить дополнительное внимание литературе по основам языка.

Замечание
Примеры к книге вы сможете найти на интернет-странице по адресу: https://yadi.sk/d/ERnh6UIzr4WfL

Замечание
Чтобы всегда быть в курсе последних событий в области программирования для Android установите на свой компьютер бесплатное программное обеспечение от компании Google — Android Studio. Для этого обратитесь по адресу: http://developer.android.com/sdk/installing/index.html

1. Подготовка к программированию

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

Итак, уточним исходные условия. В нашем распоряжении имеется:
• компьютер с операционной системой Windows;
• среда проектирования RAD Studio XE5 и выше;
• мобильное устройство, работающее под управлением Android.

Наша задача — написать простейшее приложение на Delphi для Android.

С чего начать? Если вы выступаете счастливым обладателем мобильного устройства с операционной системой Android, то начать следует с установки драйверов устройства на компьютер.

Установка драйверов устройства

Для того, чтобы операционная система Windows смогла взаимодействовать с мобильным устройством в простейшем случае достаточно общих драйверов, возможно написанных в стенах Microsoft. Это позволит переносить между операционными системами файлы и, пожалуй, всё. Для обеспечения полноценной работы, раскрывающей все нюансы вашего мобильного устройства, следует позаботится об установке на компьютер драйверов устройства с сайта производителя.

Как вы догадываетесь невозможно дать один единственный универсальный URL–адрес на котором окажутся драйверы для всех существующих на сегодня устройств. Так что смело следуйте на сайт разработчика вашего смартфона или планшета и изучайте предлагаемое к загрузке программное обеспечение. Вполне вероятно, что там не окажется архива с условным названием «драйверы для программистов Delphi», однако это не беда. Практически у всех разработчиков «железа» имеется программный продукт, рекомендуемый для работы с тем или иными мобильным устройством. Это может быть программное обеспечения для синхронизации файлов, управления контактами, планирования, управления мультимедиа, и т. п. Устанавливая этот продукт вы вместе с ним автоматически установите и последние драйверы. Косвенным свидетельством этого станет появление в диспетчере устройств Windows узла с вашим аппаратным средством.

Перевод устройства в режим отладки по USB

Следующим этапом подготовки к разработке программ для Android является перевод вашего мобильного устройства в режим отладки по USB. Для этого вам следует с помощью USB–кабеля подключить устройство к компьютеру и зайти в Настройки | Параметры разработчика (Settings | Developer options).

Рис. 1.1. Строка с номером сборки

В современных устройствах (начиная с Android 4.2) параметры разработчика надёжно спрятаны от непосвящённых пользователей. Для того, чтобы получить к ним доступ следует обратиться на вкладку Настройки | Об устройстве (Settings | About) или Настройки | Система | Справка | Сведения о ПО и отыскать строку со сведениями о номере сборки (Build Number) и, несмотря на то, что строка выглядит неактивной следует несколько раз щёлкнуть по ней пальцем (рис. 1.1). В результате таких, на первый взгляд абсолютно неперспективных действий вы раскроете скрытую строку Параметры разработчика.

Рис. 1.2. Настройка параметров разработчика

Вот такой хитрый трюк от программистов из компании Google позволяет отсечь от режима разработчика 99% даже и не подозревающих о его существовании пользователей устройств на платформе Android. Нас он остановить не смог, поэтому двинемся дальше и заглянем в столь тщательно скрываемые параметры разработчика (рис. 1.2).

По большому счёту для начала работы нам достаточно поставить всего одну «галочку» напротив строки Отладка USB. В ответ на это действие ваше мобильное устройство попросит подтвердить выбранное действие, запомнит отпечаток ключа RSA (позволяющий уникальным образом идентифицировать компьютер) и станет ожидать команд разработчика.

Замечание
В напарницы к «галочке» Отладка USB можно присоединить ещё одну «галочку» — Активный режим. Это позволит устройству не отключать экран в ситуации, когда оно получает электропитание по USB–кабелю от компьютера.

Установка дополнительных пакетов SDK

По умолчанию вместе с установкой Delphi XE10 на компьютер разработчика поставляется SDK для Android 6 (API 23). Вполне вероятно, что читатель планирует разрабатывать приложения и для более ранних (либо поздних) версий Android, в таком случае вам придётся воспользоваться услугами менеджера Android SDK Manager и добавить дополнительные пакеты SDK.

Вызов менеджера осуществляется из меню Пуск с помощью пункта Android Tools. Это ничто иное как файл android.bat который вы обнаружите в папке, путь к которой вселит ужас в любого, пожелавшего добраться до файла через проводник Windows:
C:\Users\Public\Documents\Embarcadero\Studio\nn. n\
PlatformSDKs\android-sdk-windows\tools

После запуска менеджера отметьте элементы необходимые для установки, примите лицензионное соглашение и абсолютно бесплатно получите из Интернет интересующие вас пакеты и библиотеки (рис. 1.3).

Внимание!
Если Android SDK Manager по каким-то причинам отказывается устанавливать или обновлять SDK, то перейдите к окну опций (пункт меню Tools | Options) и отметьте элемент Force https://... В результате этой операции Android SDK Manager откажется от применения защищённого протокола HTTPS в пользу обычного HTTP.

Рис. 1.3. Установка SDK с помощью Android SDK Manager

Эмуляция устройства

Вряд ли читатель выступает счастливым обладателем всех возможных типов устройств, работающих под управлением Android. В этом случае он бы наверняка попал в книгу рекордов Гиннесса. Вместе с тем было бы совсем не плохо обладать возможностью разрабатывать и осуществлять отладку наших программных творений хотя бы на основных аппаратных платформах. Что делать? Ответ таков — воспользоваться эмулятором виртуального устройства.

Исполняемый файл эмулятора виртуального устройства (а точнее менеджера виртуальных устройств Android Virtual Device Manager) вызывается к жизни файлом android.bat с ключом avd. Этот файл скрывается от нас в той же самой папке tools, что и Android SDK Manager.

Рис. 1.4. Создание виртуального устройства AVD

Благодаря менеджеру виртуальных устройств мы приобретаем возможность не только воспользоваться рядом уже предопределённых устройств, это было бы очень просто. Менеджер наделяет программиста полномочиями если не верховного божества, то по крайней мере ведущего инженера самого современного завода по выпуску электроники. Взгляните на рисунок 1.4 с экранным снимком Android Virtual Device Manager.

Нам разрешается установить достаточно широкий перечень аппаратных настроек и ограничений, в частности:
• размер и разрешение экрана;
• ключевые сенсоры (GPS, гироскоп, акселерометр, бесконтактный датчик);
• наличие камер (фронтальная и задняя);
• средства ввода (клавиатуры, трекболы, сенсорный экран);
• объём кучи памяти;
• наличие аппаратных клавиш.

Описав параметры будущего устройства следует обратиться на вкладку Android Virtual Devices и, нажав кнопку OK создать новое виртуальное устройство.

Замечание
Заметим, что создание и запуск виртуального устройства достаточно ресурсоемкое и, соответственно долгое занятие даже на высокопроизводительных компьютерах. Поэтому запаситесь терпением…

Настраивая виртуальное устройство не забывайте, что значения «виртуальных» параметров позднее будут поддерживаться за счёт вполне реальных аппаратных возможностей вашего компьютера. Так что соблюдайте здоровое равновесие. Особо осторожным следует быть при определении размерности ОЗУ, даже если на «борту» подлежащего эмуляции планшета имеется 32 ГБ памяти, это не означает, что их сможет распределить Android Virtual Device Manager в ОЗУ персонального компьютера.

Ещё одно ограничение связано с соответствием разрешения вашего монитора и экрана эмулируемого мобильного устройства, современный монитор с разрешением 1920x1080 пикселей вряд ли сможет вместить полномасштабную картинку виртуального планшета с разрешением 2560x1600… Поэтому в окне Launch Options (появляющегося после запуска виртуального устройства из Android Virtual Device Manager) стоит отметить пункт Scale Display To Real Size разрешающий масштабировать разрешение в соответствии с возможностями дисплея.

Рис. 1.5. Внешний вид эмулятора устройства Android

После запуска эмулятора (рис. 1.5) вы получите доступ к основным (но по объективным причинам далеко не ко всем) функциям устройства. Например, виртуальное устройство столкнётся с некоторыми трудностями при эмуляции телефонных вызовов, работе с камерой, позиционировании, и т. п.

Используя эмулятор для отладки ваших проектов учитывайте, что он далеко не всесилен. К сожалению эмулятор не способен в полной мере реализовывать следующий функционал:
• идентифицировать состояние телефона;
• выполнять и принимать реальные телефонные звонки;
• осуществлять фото- и видеосъёмку;
• анализировать состояние батареи;
• работать с Bluetooth.

Кроме того имеются существенные ограничения по взаимодействию с сенсорами и датчиками (акселерометр, освещение, магнитное поле, и т. д.).

Замечание
Некоторого прироста скорости работы эмулятора можно добиться, активировав переключатель Use Host GPU. В этом случае часть нагрузки, связанной с выводом изображений на виртуальном экране перекладывается на графический процессор компьютера.

Настройки проекта FMX

Для создания нашего первого проекта для Android воспользуемся пунктом меню File | New | Multi–Device Application среды проектирования. В появившемся окне выбора Multi–Device Application определитесь с внешним видом вашего приложения. В простейшем случае можно воспользоваться шаблоном пустого (blank) проекта.

Следующее действие разработчика должно быть связано с определениями настроек проекта в менеджере проектов (Project Manager). По умолчанию каждый вновь создаваемый проект Delphi нацеливается на работу с платформой Win32. В нашем случае среду проектирования необходимо переориентировать на операционную систему Google, для этого придется дважды щёлкнуть левой кнопкой мышки по строке с символом Android — пиктограммой робота (рис. 1.6).

Рис. 1.6. Менеджер проекта FMX для платформы Android

Обратите внимание на то, что вместе с выбором платформы мы одновременно определяем текущий SDK. С выходом нового SDK вы имеете возможность установить обновление с помощью Android SDK Manager. Затем, вызвав окно опций проекта (пункт меню Tools | Options) следует добраться до узла Environment Options | SDK Manager и подключить или удалить за ненадобностью пакет SDK.

Обязательно укажите целевое устройство, на котором будет осуществляться отладка проекта, таким устройством может стать, как реальный смартфон или планшет (подключенный к компьютеру по USB-кабелю), так и сконфигурированное вами с помощью Android Virtual Device Manager виртуальное устройство.

Выпуск приложения в отладочном режиме

Процесс подготовки подходит к финишной прямой. Нам осталось самое главное — опробовать процесс собственно создания приложения. Тем более, к этому всё готово:
• к компьютеру с помощью кабеля USB подключено переведённое в режим отладки устройство на платформе Android (или подготовлен и активирован его эмулятор);
• установлен и выбран целевой SDK;
• в менеджере проектов (рис. 1.7) назначено целевое устройство;
• в Delphi создано новое (пусть даже пустое) приложение для мобильной платформы.

Рис. 1.7. Эмулятор устройства с запущенным приложением

Подведём краткие итоги первой главы книги. Для того, чтобы вы смогли начать разрабатывать приложения для мобильной платформы Android необходимо, выполнить ряд предварительных условий: 
• установить Delphi XE5 (или более поздние версии);
•  установить драйверы мобильного устройства;
• с помощью USB-кабеля подключить  к компьютеру  мобильное устройство на базе Android; 
• в случае отсутствия физического устройства настроить эмулятор; 
• обновить из Интернета необходимые пакеты SDK.

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

2. Особенности приложения для Android

Первое приложение «Hello, Android!» нами уже написано и даже апробировано. При этом мы даже на йоту не углубились в изучение особенностей архитектуры операционной системы компании Google и приложения для этой ОС. Хорошо ли это? С одной стороны, да. И в первую очередь служит прямым доказательством эффективности современной среды разработки компании Embarcadero и кроссплатформенной библиотеки FMX. С другой стороны, стоит понимать, что творить чудеса только за счёт библиотеки FMX можно, но не долго. Поэтому к нашим знаниям языка программирования Delphi стоит добавить понимание основ Android.

Путь к основам Android мы начнём с рассмотрения структуры этой операционной системы. Многослойный программный «пирог», которым по своей сути и является Android предложен на рис. 2.1. Не в коем случае не претендуя на академичность, постараюсь коротко описать назначение каждого из слоёв.

Бесплатный фрагмент закончился.
Купите книгу, чтобы продолжить чтение.