SlideShare a Scribd company logo
1 of 40
Download to read offline
Beginner: Создание первого Android-приложения в
Delphi
Денис Васильев
Менеджер по RAD-продуктам
Embarcadero Technologies
denis.vasilyev@embarcadero.com
Содержание:
• Требования к Delphi и Android-устройству
• Подготовка рабочего места разработчика Android-приложений
• Создание первого приложения и запуск его на Android-устройстве
• Некоторые особенности разработки приложений
• Дополнительные настройки проекта
• Базовые ошибки разработчика Android-приложения и способы их
решения
• Домашнее задание
• Полезные ресурсы
Формат нашей совместной работы
• На вебинаре внимательно слушаем, запоминаем материал
• После вебинара самостоятельно повторяем материал, создаем все
рассмотренные примеры, дополняем их новым функционалом и
выполняем домашнее задание
• После вебинара будут доступны видео и слайды к вебинару
• Присылаем домашнее задание мне на специальный email
Требования к Delphi и Android-
устройству
Системные требования RAD Studio 10 Seattle
• ОЗУ: 1 ГБ (рекомендуется 2 ГБ)
• ПЗУ: от 3 ГБ до 58 ГБ
• ОС: Windows 7 / 8 / 8.1 / 10
Info:
http://docwiki.embarcadero.com/RADStudio/Seattle/en/Installation_Notes
Инсталлятор RAD Studio 10 Seattle и ISO-образ (7,2 Гб)
https://downloads.embarcadero.com/free/rad_studio
http://altd.embarcadero.com/download/radstudio/10/delphicbuilder10.iso
Требования к Android-устройству
• на базе процессоров ARMv7
• Поддержка neon
• Версия OS:
SysCheck:
https://play.google.com/store/apps/details?id=com.ss.syscheck
Help:
http://docwiki.embarcadero.com/RADStudio/Seattle/en/Android_Devices
_Supported_for_Application_Development
Популярность версий Android
Info:
http://developer.android.com/about/dashboards/index.html
( актуально на 5.10.2015 )
XE8
Подготовка рабочего места
разработчика Android-приложений
Что необходимо при разработке на устройстве Android?
• RAD Studio 10 Seattle
• Android SDK (Software Development Kit)
• Android NDK (Native Development Kit)
• Девайс + кабель usb
• Драйвера на свой девайс
Установка SDK + NDK
Настройка на смартфоне HTC Desire S
Настройка на смартфоне Samsung Galaxy Note Edge
Установка драйверов
Создание первого приложения и
запуск его на Android-устройстве
Создание кроссплатформенного проекта и выбор «Шаблона»
Выбор Target Platforms + Run
Некоторые особенности разработки
приложений
Пример: Стандартные компоненты
TToolBar
TListBox
TTabControl
TLabel
TButton
TActionList
Используем StyleLookup
Используем Align или Anchors
TToolBar
Align = alTop
TListBox
Align = alClient
TToolBar
Align = alBottom
TButton
Align = alRight
TLabel
Align = alContents
TextAlign = taCenter
TLabel
Align = alCenter
Используем Margins и Padding
Content
Width
Margins
Padding
Height
Bottom
Bottom
Top
Top
Right RightLeftLeft
0-индексация строк
{$ZEROBASEDSTRINGS OFF} - по умолчанию в Windows
{$ZEROBASEDSTRINGS ON} - по умолчанию в iOS, Android
for i := Low(s) to High(s) do …
Help:
http://docwiki.embarcadero.com/RADStudio/Seattle/en/Zero-based_strings_(Delphi)
Директивы ANDROID, IOS, DEBUG, …
{$IFDEF ANDROID}
me.Lines.Add('Привет Android');
{$ENDIF}
{$IFDEF VER290}
me.Lines.Add(‘Delphi XE8');
{$ENDIF}
{$IF Defined(IOS) and Defined(CPUARM) }
// Code for iOS Device only.
{$ENDIF}
{$IF Defined(IOS) and Defined(CPUX86) }
// Code for iOS Simulator only.
{$ENDIF}
Help:
http://docwiki.embarcadero.com/RADStudio/Seattle/en/Compiler_Versions
http://docwiki.embarcadero.com/RADStudio/Seattle/en/Conditional_compilation_(Delphi)
http://docwiki.embarcadero.com/RADStudio/Seattle/en/Delphi_Compiler_Directives_(List)_Index
Дополнительные настройки проекта
Uses Permissions (Разрешения) для Android
Info:
http://docwiki.embarcadero.com/RADStudio/Seattle/en/Uses_Permissions
Иконка, Splash, название пакета, версия
Базовые ошибки разработчика
Android-приложения и способы
их решения
Ошибка, нехватки места на девайсе
(!) Если на устройстве меньше 100Mб свободного
места на системном диске, то - освобождаем.
Ошибка, обновления приложения
(!) Если на устройстве несколько учетных записей,
то удаляем для всех пользователей.
Ошибка, установки приложения
(!) Конфигурация должна быть Debug.
Ошибка, недопустимые символы в имени приложения
(!) В названии Android-проекта запрещены символы Unicode.
Ошибка, запуска приложения на девайсе
(!) На пример, причиной может быть устаревший Android
Благодаря этим библиотекам, при попытке запустить
приложение на неподдерживаемом устройстве
теперь выводится сообщение. По умолчанию они
добавлены к проекту.
Домашнее задание
для закрепления материала
Домашнее задание для закрепления материала
• После вебинара самостоятельно повторите материал, создайте все
рассмотренные примеры вебинара, дополните их новым
функционалом
• Придумайте и реализуйте свои приложения, используя полученные
знания вебинаров
• Разработайте программу «тренажёр устного счёта»
Домашнее задание отправьте, пожалуйста, мне на email
• Желательно свои работы выслать до начала следующего вебинара
– Если вы смотрите вебинар в записи, то прислать свои работы можно в любое
время (через несколько недель, месяцев и т.д.)
• Все проекты с исходниками необходимо заархивировать, отправить
одним архивом на почту denis4hw@gmail.com и обязательно
указать тему в письме «w01»
Всеволод Леонов - Обучение мобильной разработке на
Delphi (2015)
https://yadi.sk/i/62V6EXxjjX7zw
Никита Культин - Основы программирования в Delphi
(2015)
Дмитрий Осипов - Delphi. Программирование для
Windows, OS X, iOS и Android (2014)
Юрий Калмыков - Учебно-методическое пособие по
Delphi для школ (2014)
https://yadi.sk/i/Uqpss_umih4S6
Никита Культин - Delphi в задачах и примерах. 3-е
издание (2012)
Полезные ресурсы
http://delphifeeds.ru/ - Агрегатор русскоязычных Delphi блогов
http://fire-monkey.ru/ - Найди ответ (задай вопрос) по FireMonkey
http://embarcadero.com/
http://blogs.embarcadero.com/
http://community.embarcadero.com/
http://edn.embarcadero.com/
http://cc.embarcadero.com/myreg
Подпишись!
Следующие вебинары …
ЧАСТЬ 1:
13.11.2015 — Создание первого Android-приложения в Delphi
27.11.2015 — Основные компоненты для разработки мобильных приложений в Delphi
11.12.2015 — Основы 2D-графики в Delphi
25.12.2015 — Разработка мобильного приложения для заучивания стихов в Delphi
Регистрация на вебинары: http://forms.embarcadero.com/EM15Q4RUWebinarRADStudioEDU
ЧАСТЬ 2:
— Основы анимации в Delphi
— Основы 3D-графики в Delphi
— Основы графики функций в Delphi
— Основы работы с базами данных в Android-приложениях на Delphi
— Разработка мобильного приложения «Дневник наблюдения» в Delphi
— Разработка мобильного приложения «Суфлёр» в Delphi
— Дополнительные компоненты для разработки мобильных приложений в Delphi
— Загрузка своего Android-приложения в Google Play
 Начало в 16-00 MSK 
https://time.yandex.ru/
Вопросы?
Спасибо.
Денис Васильев
Менеджер по RAD-продуктам
Denis.Vasilyev@embarcadero.com
http://habrahabr.ru/users/DenisVasilyev/topics
http://www.slideshare.net/DenisVasilyev1/presentations
Office
Embarcadero Technologies
russia.info@embarcadero.com

More Related Content

Viewers also liked

Fragments (Lecture 09 – Fragments)
Fragments (Lecture 09 – Fragments)Fragments (Lecture 09 – Fragments)
Fragments (Lecture 09 – Fragments)
Noveo
 

Viewers also liked (19)

Про практику DLP (Код ИБ)
Про практику DLP (Код ИБ)Про практику DLP (Код ИБ)
Про практику DLP (Код ИБ)
 
Экспресс-анализ вредоносов / Crowdsourced Malware Triage
Экспресс-анализ вредоносов / Crowdsourced Malware TriageЭкспресс-анализ вредоносов / Crowdsourced Malware Triage
Экспресс-анализ вредоносов / Crowdsourced Malware Triage
 
Ссылки, списки и меню (HTML5 тема 06 - ссылки, списки и меню)
Ссылки, списки и меню (HTML5 тема 06 - ссылки, списки и меню)Ссылки, списки и меню (HTML5 тема 06 - ссылки, списки и меню)
Ссылки, списки и меню (HTML5 тема 06 - ссылки, списки и меню)
 
Lec 13
Lec 13Lec 13
Lec 13
 
Lec 9
Lec 9Lec 9
Lec 9
 
Push Notifications (Lecture 22 – push notifications)
Push Notifications (Lecture 22 – push notifications)Push Notifications (Lecture 22 – push notifications)
Push Notifications (Lecture 22 – push notifications)
 
Введение в Android-разработку (Lecture 06 – basics)
Введение в Android-разработку (Lecture 06 – basics)Введение в Android-разработку (Lecture 06 – basics)
Введение в Android-разработку (Lecture 06 – basics)
 
Seminar: Установка и настройка рабочего стенда разработчика Android-приложени...
Seminar: Установка и настройка рабочего стенда разработчика Android-приложени...Seminar: Установка и настройка рабочего стенда разработчика Android-приложени...
Seminar: Установка и настройка рабочего стенда разработчика Android-приложени...
 
Webinar: Возможности RAD Studio 10 Seattle для разработки Windows 10 приложений
Webinar: Возможности RAD Studio 10 Seattle для разработки Windows 10 приложенийWebinar: Возможности RAD Studio 10 Seattle для разработки Windows 10 приложений
Webinar: Возможности RAD Studio 10 Seattle для разработки Windows 10 приложений
 
Thread
ThreadThread
Thread
 
Database (Lecture 14 – database)
Database (Lecture 14 – database)Database (Lecture 14 – database)
Database (Lecture 14 – database)
 
Lec 12
Lec 12Lec 12
Lec 12
 
Работа с графической подсистемой (Lecture 10 – Graphics)
Работа с графической подсистемой (Lecture 10 – Graphics)Работа с графической подсистемой (Lecture 10 – Graphics)
Работа с графической подсистемой (Lecture 10 – Graphics)
 
Семантика текста (HTML5 тема 04 - семантика текста)
Семантика текста (HTML5 тема 04 - семантика текста)Семантика текста (HTML5 тема 04 - семантика текста)
Семантика текста (HTML5 тема 04 - семантика текста)
 
Библиотеки для передачи данных (Lecture 13 – multithreading, network (libs))
Библиотеки для передачи данных (Lecture 13 – multithreading, network (libs))Библиотеки для передачи данных (Lecture 13 – multithreading, network (libs))
Библиотеки для передачи данных (Lecture 13 – multithreading, network (libs))
 
Fragments (Lecture 09 – Fragments)
Fragments (Lecture 09 – Fragments)Fragments (Lecture 09 – Fragments)
Fragments (Lecture 09 – Fragments)
 
Lec 10
Lec 10Lec 10
Lec 10
 
Системы автоматизированной сборки (Lecture 05 – gradle)
Системы автоматизированной сборки (Lecture 05 – gradle)Системы автоматизированной сборки (Lecture 05 – gradle)
Системы автоматизированной сборки (Lecture 05 – gradle)
 
Webinar: Использование UWP/WinRT Contracts и Notification в Windows 10
Webinar: Использование UWP/WinRT Contracts и Notification в Windows 10Webinar: Использование UWP/WinRT Contracts и Notification в Windows 10
Webinar: Использование UWP/WinRT Contracts и Notification в Windows 10
 

More from Denis Vasilyev

More from Denis Vasilyev (7)

Webinar: Создание приложений в FireMonkey для Windows 10 в RAD Studio 10 Seattle
Webinar: Создание приложений в FireMonkey для Windows 10 в RAD Studio 10 SeattleWebinar: Создание приложений в FireMonkey для Windows 10 в RAD Studio 10 Seattle
Webinar: Создание приложений в FireMonkey для Windows 10 в RAD Studio 10 Seattle
 
Webinar: Новые визуальные VCL-компоненты для Windows 10 в RAD Studio 10 Seattle
Webinar: Новые визуальные VCL-компоненты для Windows 10 в RAD Studio 10 SeattleWebinar: Новые визуальные VCL-компоненты для Windows 10 в RAD Studio 10 Seattle
Webinar: Новые визуальные VCL-компоненты для Windows 10 в RAD Studio 10 Seattle
 
Seminar: Взаимодействие приложений и IoT
Seminar: Взаимодействие приложений и IoTSeminar: Взаимодействие приложений и IoT
Seminar: Взаимодействие приложений и IoT
 
Seminar: Эффективное использование среды разработки и компилятора C++
Seminar: Эффективное использование среды разработки и компилятора C++Seminar: Эффективное использование среды разработки и компилятора C++
Seminar: Эффективное использование среды разработки и компилятора C++
 
Seminar: Разработка приложений для Windows 10 и новые возможности VCL
Seminar: Разработка приложений для Windows 10 и новые возможности VCLSeminar: Разработка приложений для Windows 10 и новые возможности VCL
Seminar: Разработка приложений для Windows 10 и новые возможности VCL
 
Webinar: Обзор RAD Studio 10 Seattle (Delphi, C++Builder)
Webinar: Обзор RAD Studio 10 Seattle (Delphi, C++Builder)Webinar: Обзор RAD Studio 10 Seattle (Delphi, C++Builder)
Webinar: Обзор RAD Studio 10 Seattle (Delphi, C++Builder)
 
Webinar: Обзор новых возможностей в RAD Studio XE8 (Delphi, C++Builder)
Webinar: Обзор новых возможностей в RAD Studio XE8 (Delphi, C++Builder)Webinar: Обзор новых возможностей в RAD Studio XE8 (Delphi, C++Builder)
Webinar: Обзор новых возможностей в RAD Studio XE8 (Delphi, C++Builder)
 

Webinar: Создание первого Android-приложения в Delphi

  • 1. Beginner: Создание первого Android-приложения в Delphi Денис Васильев Менеджер по RAD-продуктам Embarcadero Technologies denis.vasilyev@embarcadero.com
  • 2. Содержание: • Требования к Delphi и Android-устройству • Подготовка рабочего места разработчика Android-приложений • Создание первого приложения и запуск его на Android-устройстве • Некоторые особенности разработки приложений • Дополнительные настройки проекта • Базовые ошибки разработчика Android-приложения и способы их решения • Домашнее задание • Полезные ресурсы
  • 3. Формат нашей совместной работы • На вебинаре внимательно слушаем, запоминаем материал • После вебинара самостоятельно повторяем материал, создаем все рассмотренные примеры, дополняем их новым функционалом и выполняем домашнее задание • После вебинара будут доступны видео и слайды к вебинару • Присылаем домашнее задание мне на специальный email
  • 4. Требования к Delphi и Android- устройству
  • 5. Системные требования RAD Studio 10 Seattle • ОЗУ: 1 ГБ (рекомендуется 2 ГБ) • ПЗУ: от 3 ГБ до 58 ГБ • ОС: Windows 7 / 8 / 8.1 / 10 Info: http://docwiki.embarcadero.com/RADStudio/Seattle/en/Installation_Notes Инсталлятор RAD Studio 10 Seattle и ISO-образ (7,2 Гб) https://downloads.embarcadero.com/free/rad_studio http://altd.embarcadero.com/download/radstudio/10/delphicbuilder10.iso
  • 6. Требования к Android-устройству • на базе процессоров ARMv7 • Поддержка neon • Версия OS: SysCheck: https://play.google.com/store/apps/details?id=com.ss.syscheck Help: http://docwiki.embarcadero.com/RADStudio/Seattle/en/Android_Devices _Supported_for_Application_Development
  • 9. Что необходимо при разработке на устройстве Android? • RAD Studio 10 Seattle • Android SDK (Software Development Kit) • Android NDK (Native Development Kit) • Девайс + кабель usb • Драйвера на свой девайс
  • 12. Настройка на смартфоне Samsung Galaxy Note Edge
  • 14. Создание первого приложения и запуск его на Android-устройстве
  • 20. Используем Align или Anchors TToolBar Align = alTop TListBox Align = alClient TToolBar Align = alBottom TButton Align = alRight TLabel Align = alContents TextAlign = taCenter TLabel Align = alCenter
  • 21. Используем Margins и Padding Content Width Margins Padding Height Bottom Bottom Top Top Right RightLeftLeft
  • 22. 0-индексация строк {$ZEROBASEDSTRINGS OFF} - по умолчанию в Windows {$ZEROBASEDSTRINGS ON} - по умолчанию в iOS, Android for i := Low(s) to High(s) do … Help: http://docwiki.embarcadero.com/RADStudio/Seattle/en/Zero-based_strings_(Delphi)
  • 23. Директивы ANDROID, IOS, DEBUG, … {$IFDEF ANDROID} me.Lines.Add('Привет Android'); {$ENDIF} {$IFDEF VER290} me.Lines.Add(‘Delphi XE8'); {$ENDIF} {$IF Defined(IOS) and Defined(CPUARM) } // Code for iOS Device only. {$ENDIF} {$IF Defined(IOS) and Defined(CPUX86) } // Code for iOS Simulator only. {$ENDIF} Help: http://docwiki.embarcadero.com/RADStudio/Seattle/en/Compiler_Versions http://docwiki.embarcadero.com/RADStudio/Seattle/en/Conditional_compilation_(Delphi) http://docwiki.embarcadero.com/RADStudio/Seattle/en/Delphi_Compiler_Directives_(List)_Index
  • 25. Uses Permissions (Разрешения) для Android Info: http://docwiki.embarcadero.com/RADStudio/Seattle/en/Uses_Permissions
  • 26. Иконка, Splash, название пакета, версия
  • 28. Ошибка, нехватки места на девайсе (!) Если на устройстве меньше 100Mб свободного места на системном диске, то - освобождаем.
  • 29. Ошибка, обновления приложения (!) Если на устройстве несколько учетных записей, то удаляем для всех пользователей.
  • 30. Ошибка, установки приложения (!) Конфигурация должна быть Debug.
  • 31. Ошибка, недопустимые символы в имени приложения (!) В названии Android-проекта запрещены символы Unicode.
  • 32. Ошибка, запуска приложения на девайсе (!) На пример, причиной может быть устаревший Android Благодаря этим библиотекам, при попытке запустить приложение на неподдерживаемом устройстве теперь выводится сообщение. По умолчанию они добавлены к проекту.
  • 34. Домашнее задание для закрепления материала • После вебинара самостоятельно повторите материал, создайте все рассмотренные примеры вебинара, дополните их новым функционалом • Придумайте и реализуйте свои приложения, используя полученные знания вебинаров • Разработайте программу «тренажёр устного счёта»
  • 35. Домашнее задание отправьте, пожалуйста, мне на email • Желательно свои работы выслать до начала следующего вебинара – Если вы смотрите вебинар в записи, то прислать свои работы можно в любое время (через несколько недель, месяцев и т.д.) • Все проекты с исходниками необходимо заархивировать, отправить одним архивом на почту denis4hw@gmail.com и обязательно указать тему в письме «w01»
  • 36.
  • 37. Всеволод Леонов - Обучение мобильной разработке на Delphi (2015) https://yadi.sk/i/62V6EXxjjX7zw Никита Культин - Основы программирования в Delphi (2015) Дмитрий Осипов - Delphi. Программирование для Windows, OS X, iOS и Android (2014) Юрий Калмыков - Учебно-методическое пособие по Delphi для школ (2014) https://yadi.sk/i/Uqpss_umih4S6 Никита Культин - Delphi в задачах и примерах. 3-е издание (2012)
  • 38. Полезные ресурсы http://delphifeeds.ru/ - Агрегатор русскоязычных Delphi блогов http://fire-monkey.ru/ - Найди ответ (задай вопрос) по FireMonkey http://embarcadero.com/ http://blogs.embarcadero.com/ http://community.embarcadero.com/ http://edn.embarcadero.com/ http://cc.embarcadero.com/myreg Подпишись!
  • 39. Следующие вебинары … ЧАСТЬ 1: 13.11.2015 — Создание первого Android-приложения в Delphi 27.11.2015 — Основные компоненты для разработки мобильных приложений в Delphi 11.12.2015 — Основы 2D-графики в Delphi 25.12.2015 — Разработка мобильного приложения для заучивания стихов в Delphi Регистрация на вебинары: http://forms.embarcadero.com/EM15Q4RUWebinarRADStudioEDU ЧАСТЬ 2: — Основы анимации в Delphi — Основы 3D-графики в Delphi — Основы графики функций в Delphi — Основы работы с базами данных в Android-приложениях на Delphi — Разработка мобильного приложения «Дневник наблюдения» в Delphi — Разработка мобильного приложения «Суфлёр» в Delphi — Дополнительные компоненты для разработки мобильных приложений в Delphi — Загрузка своего Android-приложения в Google Play  Начало в 16-00 MSK  https://time.yandex.ru/
  • 40. Вопросы? Спасибо. Денис Васильев Менеджер по RAD-продуктам Denis.Vasilyev@embarcadero.com http://habrahabr.ru/users/DenisVasilyev/topics http://www.slideshare.net/DenisVasilyev1/presentations Office Embarcadero Technologies russia.info@embarcadero.com