Delphi ds150e android

Прошло уже несколько лет с тех пор, как я последний раз более менее серьезно разбирался с FMX (aka FireMonkey). Впервые разработчики массово узнали о FMX ещё пять лет назад, в 2011 году, когда на рынок вышла Delphi XE2 в составе которой и появилась библиотека Firemonkey. С одной стороны, появление в составе Delphi библиотеки, с помощью которой можно разрабатывать приложения под Mac OS (тогда поддерживалась только эта платформа) вызвало восторг, желание изучить новые компоненты, поделиться с другими впечатлениями об использовании «огненной обезьяны”. Видимо, в тот момент виртуалки с Mac OS побили все рекорды по скачиванию. С другой же стороны, что скрывать, новая библиотека вызывала, если и не тихий ужас, то, по крайней мере, удивление – багов и недоработок там хватало. Однако, уже в Delphi XE3 библиотека была значительно переработана и получила новое название FMX2. Не могу сказать, что всё восприняли обновление «на ура”, так как библиотека была переписана чуть более, чем наполовину и собранные в Delphi XE2 проекты пришлось практически переписывать заново. Затем вышла Delphi XE4 с поддержкой iOS, а после – Delphi XE5, в которой наконец-то появилась поддержка Android. И, надо сказать, что мои попытки «проникнутся духом FMX” закончились ровно там, где и начинались – в Delphi XE5. Причина была скорее в нехватке свободного времени, а не в том, что я как-то предвзято относился к FMX.

И вот сейчас на рынке во всю пиарится Delphi 10.1 Berlin, а я решил снова залезть в дебри FMX и, наконец-то, сделать то, что планировал уже давным-давно – переписать приложение «Я математик” под Android. Надо сказать, что сейчас я, как и 5 лет назад, стою в самом начале изучения библиотеки FMX, так как поменялась она значительно. Надеюсь, что на этот раз получится сделать что-нибудь более менее работающее под Android, а не только китайский календарь.

Инструментарий для работы у меня следующий:

  1. HTC One M7 с Android 5.0.2
  2. Delphi 10.1 Berlin
  3. Android SDK 24.3.3 (32 bit) – устанавливался отдельно от Delphi (вот по этой инструкции), так как изначально я не планировал в ближайшее время возвращаться к разработке под Android
  4. LiteDAC 2.7.24 (если потребуется разработка базы данных)

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

Идея приложения

Идея приложения «Я математик” сводится к тому, чтобы научить пользователя быстро решать в уме различные задачки, например, быстро умножать любое число от 0 до 99 на 5, или вычислять квадратные корни и так далее. После выхода первой версии программы появился ряд идей по доработке приложения, которые я и попытаюсь реализовать в версии для Android. Так же, специально для самых маленьких пользователей я планирую добавить в программу небольшой блок задач на знание таблицы умножения (этой функцией, я думаю, будет пользоваться, как минимум один, но самый важный для меня человек – моя дочь).

Первый макет приложения.

Открываем Delphi 10.1 и в главном меню выбираем File – New – Multi-Device Application.

Delphi услужливо нам предложит выбрать тип будущего приложения: пустое приложения, приложения с табами, 3-D Application и так далее

С одной стороны, выбор первоначального макета приложения позволяет пусть немного, но сократить время на то, чтобы накидать на главную форму необходимые компоненты и создать минимальный набор методов, например, для навигации в приложении, а с другой стороны – в случае необходимости довольно быстро разобраться с основами управления всё тех же компонентов на форме. Например, выбрав последний вариант приложения (Tabbed with Navigation) вы можете тут же его собрать, посмотреть, как Delphi-приложение работает в Android и, если потребуется, то быстро понять как управляться с TTabControl, переключаться с таба на таб, выходить из приложения при нажатии кнопки return и так далее. В общем, если вы только начинаете разбираться с FMX – не поленитесь попробовать все типы приложений из предложенного набора (само собой, исключая первое – Blank Application, так как там смотреть нечего).

Итак, я выбрал из предложенного набора третий вариант, который называется «Header/Footer”. В Header я разместил две кнопки TButton и установил у них следующие свойства:

  • Первая кнопка:
    • Align = Left;
    • StyleLookup = «escapetoolbutton”;
    • Text = «Выход”
  • Вторая кнопка:
    • Align = Right;
    • StyleLookup = «playtoolbutton”;
    • Text = «Играть”

Так как будущее приложение подразумевает, как минимум три стадии работы: выбор видов задач, решение задач и просмотр результатов, то я положил на главную форму компонент TTabControl, в котором создал три таба и установил свойство Align в значение Client, то есть растянул компонент по всему доступному месту на форме. После этого, не долго думая (а стоило бы) я накидал на таб «Задачи” несколько чек-боксов у которых установил следующие свойства (одинаковые для всех):

  • Align = Top
  • Margins.Left = 20
  • Margins.Top = 20

Также я положил на форму компонент TSpibBox для выбора количества задач в тесте и, в конечном итоге, получил вот такой вид формы в режиме просмотра «Master”:

Чтобы представить, как будет выглядеть приложение, например, на телефоне с экраном в 4″ достаточно выбрать в редакторе формы в списке View необходимый режим просмотра:

Здесь же Вы можете и посмотреть, как будет выглядеть приложение при различной ориентации экрана. После того, как вы выбираете в списке View очередной вид, в ресурсы приложения добавляется новая форма:

Для каждого вида формы вы можете установить свое расположение компонентов. Например, ниже представлен вид приложения для Android c 4-х и 5-ти дюймовыми экранами:

Если, находясь в режиме просмотра, например, Android 4” Вы попытаетесь удалить любой компонент с формы, то получите вот такую ошибку:

exception class : EComponentDesignerException
exception message : Selection contains a component, %COMPONENT_NAME%, introduced in an ancestor and cannot be deleted.

Для удаления компонентов с форм достаточно перейти в режим просмотра «Master”.

Теперь, немного поупражнявшись с редактором форм, можно перейти к вопросы о том, где я допустил ошибку при создании первоначального макета приложения?

Доступ к компонентам формы на любых экранах

При разработке приложений для Windows с небольшим количеством компонентов, мы как-то особенно не задумываемся на тем уместится ли 2 метки и 5 чек-боксов с текстом в 20-30 символов на главной форме. Само собой, что сейчас надо умудриться найти у обычного пользователя ПК монитор с диагональю менее 15” и максимальным разрешением 640х480 и менее. И эта уверенность может сыграть с нами злую шутку при разработке под Android. Возьмем, к примеру, макет приложения, который я первоначально накидал. Да, компоненты, прекрасно уместились на экране телефона в 5”, но теперь возьмем этот же телефон, развернем экран и попробуем добраться, например, до редактора количества задач. Этого сделать не получится, так как редактор будет находиться за пределами видимости. Поэтому, лично для себя я решил:

при разработке приложения под Android в Delphi, везде, где это возможно, использовать TScrollBox или любой другой контейнер с возможностью прокрутки

чтобы даже на экране с диагональю 1,5” пользователь мог пролистать список компонентов до необходимого. Благ, что с помощью Delphi подправить, в случае необходимости, макет формы не составляет большого труда. Просто переходим в режим Master, добавляем на таб «Задачи” компонент TScrollBox с вкладки Layouts, растягивая его по всему доступному пространству. Затем, в окне Structure выбираем компоненты, расположенные на табе и перетаскиваем их на ScrollBox. Всё. Теперь даже на самом маленьком экране пользователь сможет прокрутить список компонентов и добраться до необходимого. Проверить это можно также в режиме просмотра, например, Android 4”.

Видимость компонентов при наборе текста

Еще один момент на который стоит обратить внимание – это видимость компонентов, например, Edit’ов в момент, когда Вы добавляете в него текст. Продемонстрировать эту проблему можно, используя всё тот же макет, разработанный в начале. Попробуйте запустить приложение и попробовать записать какое-нибудь число в SpinText. Вы увидите, что экранная клавиатура полностью перекрывает компонент и вы не можете увидеть, что вы пишете. Проскролировать форму в момент набора текста вы также не можете, так как, в этом случае, компонент теряет фокус и экранная клавиатура исчезает.

В попытках решения этой проблемы я нашел на сайте http://fire-monkey.ru/ замечательный модуль под названием vkbdhelper.pas, который решает указанную выше проблемы для Android. Просто подключаем этот модуль к проекту и забываем о проблеме. Теперь, при появлении экранной клавиатуры вы всегда будете видеть, что вы пишете в компоненте и в каком компоненте вы пишите.

Теперь, немного поупражнявшись с редактором форм, можно приступать к доработке интерфейса будущего приложения, добавлению компонентов на другие табы и так далее. Однако об этом мы поговорим в следующий раз.

Исходники к этой статье не прилагаются, так как показывать пока особенно нечего.

Книжная полка

Дмитрий Осипов Название:Delphi. Программирование для Windows, OS X, iOS и Android Описание Подробно рассматривается библиотека FM, позволяющая создавать полнофункциональное программное обеспечение для операционных систем Windows и OS X, а также для смартфонов и планшетных компьютеров, работающих под управлением Android и iOS Купить на ЛитРес 359 руб.

В записи Ставим гаражный диагноз с помощью китайского сканера Delphi DS150e я делился первыми впечатлениями от сканера Delphi DS150e. По мотивам заметки возникло два основных вопроса: а чего он умеет и какое ПО с ним используется? Постараюсь ответить на оба.

В комплекте с девайсом идет одноименная программа Delphi DS150E (New VCI) 2014 Release 2 (несмотря на заставку, версия именно эта). Кроме нее, с этим сканером умеет работать Wurth WOW!, в моем случае это версия 5.00.8. Концептуально программы близки, а о нюансах каждой читайте в соответствующем разделе. Сам сканер пришел с прошивкой 1410, в него благополучно была залита 1423. Есть возможность залить версию 1430, что будет сделано несколько позже. Ну и отдельно есть версия протокола eOBD, ее не помню — сто-какая-то.

Общий функционал сканера Delphi DS150e
Независимо от используемого ПО, сканер умеет работать в режиме Generic OBD или eOBD. В этом случае железку не особо интересует какие марки и модели поддерживает программа, она сканирует все доступные блоки (ошибки, данные датчиков). Как правило, это блок ECU — управления двигателем. Т.е. в этом режиме DS150e по-сути аналогичен ELM327.

Гораздо интереснее другой режим, который зависит от используемого ПО (точнее от того, какие протоколы и функции прописаны для конкретных моделей и их блоков управления). Здесь уже доступно сканирование ошибок (и их удаление) и данных по различным системам: панель приборов, SRS, ABS/ESP, блок комфорта, блок управления коробкой и т.п. Кроме того, здесь могут быть доступны сервисные функции, такие как: адаптация, тест исполнительных механизмов, кодирование (например, форсунок в дизельных двигателях или даже прописывание ключей в блок иммобилайзера) и коррекция параметров. Набор получаемых данных и возможности по их корректировке вплотную зависят от поддержки блоков программным обеспечением. С каждым релизом поставляется (как правило, это так, однако в «ломаных» версиях этой информации может и не быть) перечень поддерживаемых моделей и какая функциональность доступна для каждой.

Delphi DS150E 2014 Release 2 (2.14.2.2)
С общими моментами разобрались, давайте поглядим на конкретные программы. Первой осмотрим Delphi DS150E (New VCI). Начну с того, что функциональность программы строго утилитарна и относится к сканеру и функциям выполняемым им: каталог марок и моделей, доступные для взаимодействия системы и — в случаях, когда это требуется — подсказки по выполнению процедур. Хочу заметить, что несмотря на то, что программа имеет русификацию, выполнена она из рук вон плохо (чего стоит кнопка «ОК», переведенная как «В норме»). Проще использовать английский вариант, там хотя бы возможно нагуглить однозначный и правильный вариант перевода термина.

Основное окно включает в себя верхнюю менюшку, кнопку режима eOBD в верхнем правом углу, четыре кнопки по левому краю и еще три внизу справа. В центре открываются соответствующие окошки.

Собственно, первые две кнопки слева, по сути, переключают представление каталога: последовательный выбор Марка-Модель-Год или в виде древовидной структуры. В первом случае можно выполнить поиск по VIN-коду (вместо ручного поиска по каталогу, программа считывает данные с автомобиля и определяет его автоматически), зато во втором доступна информация о типе кабеля/разъема, размещении блоков управления и диагностического разъема. Третья кнопка позволяет открыть историю диагностических операций, а четвертая — расположенная внизу — закрывает программу.

Кнопки в правом нижнем углу (слева направо) позволяют: запустить сканер в режиме «сбора данных» (в этом случае постоянное подключение к ПК не требуется), просканировать все системы в режиме ISS или просканировать конкретную систему. Последние две кнопки, соответственно, активны либо когда выбран режим ISS (Intellectual System Scan) — здесь нужные блоки выбираются в диалоге, либо когда выбрана конкретная система (двигатель, тормоза и т.п.). После проверки конкретной системы левая панель меняет свой вид, позволяя читать/стирать ошибки, просматривать т.н. измеряемые показатели и осуществлять настройку/адаптацию/кодирование систем.

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

1) Скачиваем архив с программой:

Торрент Autocom: СКАЧАТЬ

2) Отключаем антивирус и распаковываем архив.

Отключить антивирус очень Важно!

Если не отключить, не сможете активировать программу.

На самом деле вирусов в наших файлах нет! Это всё происки капиталистов!

3) Если в папке «Activator» нет этих файлов:

значит их скушал хитрый антивирусник ещё при скачивании архива.

3.1) Копируем папку с программами на диск С или любое другое место, где она будет жить постоянно. После активации перемещать папки будет уже нельзя. Или можно, но активировать придётся заново))).

3.2) Запускаем программу.

4) Ждём пока программа запустится, а запускается она около минуты, видимо переживает, что попала к Русским и её будут эксплуатировать на морозе.

Не обращайте внимания на надпись «2013 Release 3» – это просто заставка от старой версии.

4.1) Жмём OK, стрелочки «Вперёд», пока не появится окно регистрации и запускаем генератор ключей, если этого файла нет, смотрите пункт 3 данной инструкции.

5) Вводим в окне генератора и программы Delphi SN 100251, ставим в генераторе правильные галочки и нажимаем KEY , копируем сгенерированный HWKEY в окно регистрации и нажимаем стрелочку «Верёд».

6) Нажимаем кнопку

Сохраняем fileactivation на рабочий стол

Программа выдаст надпись:

Ничего не закрываем, все окна раздвигаем по бокам рабочего стола и запускаем активатор. Внимание! Если Вы забыли выключить антивирусник, этого файла не будет в папке, либо он не запустится. Чтобы он появился, нужно заново вытащить его из архива при выключенном антивирусе. Либо смотрите пункт 3 данной инструкции.

7) Активируем файл «fileactivation», ранее сохранённый на рабочий стол.

8) После успешной активации, закрываем активатор и даём программе уже активированный файл.

То есть! Снова нажимаем кнопку «START» и «нет».

9) Выбираем тот же самый файл, который был сохранён и активирован ранее, программа запускается.

10) Программа сделает последнюю попытку отказаться работать, предложив Вам обновиться до версии 2013.3.3!

Не соглашайтесь! Это подстава!

11) Активируем лицензию Turbo Charger и Diesel Max

Для этого выбираем в меню HELP , Licence.

Откроется такое окно, нажимаем «Upgrade Licence»

12) Откроется окно:

Выбираем «Upgrade licence to Diesel Max» и OK.

Если Вы не открывали генератор ключей ранее или закрыли его, то он находится в этой папке:

Генерируем ключ для Diesel Max , копируем в окно и нажимаем OK

13) Аналогично активируем лицензию Turbo Charger

14) Всё активировано. Теперь выбираем в настройках нужный язык.

В верхнем меню выбираем «Settings», затем выбираем «Language».

Нажимаем OK и перезапускаем программу.

15) Не забудьте сделать для программы ярлык на рабочем столе:

15.1) Созданный ярлык переименуйте в DELPHI CARS 2014.2.2.

16) Заходим в «Настройки оборудования»,

подключаем сканер к авто и компьютеру по USB кабелю.

Проходим ТЕСТ и Обновляем прошивку клавишей «Обновить»

17) Аналогично активируем и настраиваем программу для грузовых авто, меняются только ключи, перепрошивать сканер уже не нужно.

Ошибка «Unknown error during init

Для WIN7 x64. Если возникает ошибка при установке программ Autocom/Delphi «unknown error during init»:

1) Удаляем установленную программу (uninslall).

2) Удаляем папку C:Users(ИМЯ ПОЛЬЗОВАТЕЛЯ)AppDataRoamingAutocom

3) Удаляем папку C:ProgramDataAutocom

4) Чистим реестр программой CCleaner.

5) Устанавливаем SQL Server X32

6) Запускаем установку снова. Вуаля! Всё работает!

Autocom cdp и Delphi ds150e – мультимарочные сканеры для компьютерной диагностики автомобилей. В настоящее время существует множество программ и версий к вышеуказанным автосканерам. На сегодняшний день самая стабильная и работоспособная версия 2014.3

Что бы установить и настроить программу к Autocom cdp и Delphi ds150e Вам потребуются некоторые знания компьютера и оболочки windows.

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

1. Находим файл SSCERuntime_x86-ENU.msi и устанавливаем.

2. Обязательно требуется установка NetFramework 3.5 (dotnetfx35.exe) или новее. Зачастую данная программа уже установлена на Вашем компьютере. Если же нет, то без труда скачиваем из сети интернет и устанавливаем. Установка очень проста.

4. Переходим во вкладку «ПРИМЕНЕНИЕ».

5. В строке «ИСТОЧНИК» выбираем файл Final_archive_2.14.3.3_(xcjps)(60×1).wim, расположенный в установочной папке.

6. В строке «ПОЛУЧАТЕЛЬ» выбираем диск C: (при выборе иного пути работоспособность НЕ ГАРАНТИРУЕМ).

7. В строке «ОБРАЗ» выбираем версию устанавливаемого софта. Можно оставить номер 1 или вручную выбрать из списка.

Для установки Delphi выбрать 1 (легковые) или 2 (грузовые)

Для установки Autocom выбрать 46 (легковые) или 47 (грузовые)

Не рекомендуется устанавливать то, что вам неизвестно!

8. Нажимаем кнопку «ПРИМЕНИТЬ» и ждем окончание установки. В подтверждение завершения процесса появиться надпись «WIM успешно применён в . «. Жмем кнопку «Abort».

9. Закрываем программу GImageX_Ru.

10. Программа установлена. Теперь нам требуется пройти активацию. Идем в установочную папку C:Delphi 2.14.3 100251Delphi Cars 2.14.3.3 100251Activator2014R3.3 (в зависимости от вашего выбора в пункте 7 вместо Delphi может быть Autocom) и запускаем активатор Keygen_2014R3.exe.

11. В C:Delphi 2.14.3 100251 будет расположено два ярлыка. Рассмотрим на примере Delphi cars.

Ярлык Main-Delphi Cars 2.14.3.3 100251 требуется для активации.

RunAsDate-Delphi Cars 2.14.3.3 100251 ярлык программы с откатом даты, рекомендуется использовать для работы, так как с откатом даты выполняется больше функций программы.

12. Запускаем Main-Delphi Cars 2.14.3.3 100251 (ярлык без отката даты). В первом открывшемся окне нажимаем стрелку далее, потом снова далее, снова далее. Появляется кнопка START, нажимаем START, появляется окно с двумя кнопками (YES и NO), нажимаем YES, программа предлагает сохранить файл, сохраняем его в любом месте (Рабочий стол).

13. Возвращаемся к активатору, который ранее запущен (в 10 шаге). Нажимаем кнопку Activate FileActivation.xml, открываем файл, сохраненный в 12 шаге.

14. Идем к программе, на экране все также кнопка START, нажимаем start и выбираем NO, открываем ранее сохраненный файл. Начинается запуск программы.

15. Программа запустилась, но она на английском языке, необходимо переключить на русский язык. Идем во вкладку «settings» далее «language» и выбираем Russian. Происходит перезапуск Программы.

16. Далее необходимо установить драйвер для прибора. Для этого подключаем прибор через USB шнур и через диспетчер устройств вручную установить драйвер для неизвестного устройства. Драйвер расположен по адресу C:Delphi 2.14.3 100251Delphi Cars 2.14.3.3 100251Driver. Подробнее.

17. После установки драйвера в настройках программы необходимо выбрать COM порт на который установлено устройство. После запуска RunAsDate-Delphi Cars 2.14.3.3 100251 Идем во вкладку «настройки» далее «установки оборудования» и выбираем нужный COM PORT. Далее проходим тест.

Внимание! При первом подключении адаптера к программе в нем необходимо обновить прошивку. Обновление прошивки можно производить только через USB кабель. Bluetooth адаптеры должны быть прошиты через USB.

Если необходимо установить дополнительный софт, например, поставили легковые и нужны грузовые, то повторите пункты 7 и 8.