powered by simpleCommunicator - 2.0.35     © 2025 Programmizd 02
Форумы / Разработка под мобильные платформы [игнор отключен] [закрыт для гостей] / Пример создания Android приложения в RAD Studio 10 Seattle для работы c сервером MySQL.
4 сообщений из 4, страница 1 из 1
Пример создания Android приложения в RAD Studio 10 Seattle для работы c сервером MySQL.
    #39138945
Pax Beach
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пример создания Android приложения в RAD Studio 10 Seattle для работы c сервером MySQL. Работа с компонентами UniDAC от Devart.


Столкнулся с проблемой взаимодействия своего приложения Android с сервером MySQL в локальной сети.
Задача простая: скачать на планшет таблицу с данными с сервера MYSQL в локальной сети, выполнить на планшете действия с данными, выгрузить обратно на MySQL уже в другую таблицу результат действий.
Начал разбираться, пересмотрел и перечитал множество примеров других разработчиков. Оказалось, что в RAD Studio 10 Seattle нет компонентов, способных заставить работать Android устройство напрямую с сервером MySQL.
Конечно есть FireDAC, dbExpress.
По факту, хоть разработчики dbExpress и заявляют, что компонент TSQLConnection работает с Android platform, но при попытке открыть соединение с MySQL сервером на Android устройстве сообщает об ошибке. На Windows компонент отрабатывает соединение нормально.

Разработчики FireDAC честно заявили, что их соединение с MySQL на Android работать не будет.


Какие есть выходы:
1. Создать DataSnap сервер, который будет установлен на сервере и взаимодействовать с Android клиентом и сервером MySQL. DataSnap будет являться прослойкой между Android и MySQL, через него можно осуществлять обмен данными, обернутыми в JSON.
Для меня этот вариант не подходит, потому что по различным причинам устанавливать на сервер (или даже рабочую станцию) дополнительный сервер приложений не представляется возможным.
2. Использовать дополнительные компоненты, позволяющие работать с MySQL из-под Android и iOS.

Поиск нужных компонентов для RAD Studio показал, что все они платные. И уж если бесплатных не найти, покупать нужно хороший продукт, которые поддерживает как минимум MySQL, SQLite, SQLServer.

Не буду начинать холивар, скажу только, что для меня наиболее подходящим оказался компонент UniDAC от Харьковской компании Devart. Решающими факторами стали: удобнная политика лицензирования, приемлемая для задач цена, быстрая скорость ответа технической поддержки, конечно, поддержка всех распространенных серверов баз данных и нужных мне платформ, работа с большими объемами данных (более 100 тыс. записей), возможность 2 месяца тестировать компоненты, получить существенную скидку при покупке, рекомендации разработчиков с форума www.fire-monkey.ru .

На сайте www.devart.com выбрал свою версию RAD Studio и скачал инсталяторы компонентов UniDAC и MyDAC. Установил и запустил RAD Studio. В главном меню RAD Studio появились соответствующие пункты меню, а в палитру компонентов добавились три закладки.


Вы самостоятельно может скачать и попробовать компоненты можно по этой ссылке https://www.devart.com/unidac/

Реализация кода:
Итак, я собрал тестовый стенд. На котором разместил 3 соединения, 3 набора данных, три кнопки для соединения и разъединения с сервером MySQL, и две метки, в которые при успешном соединении записываю случайную запись «Название компании» из таблицы «Покупатели», в одну Ansi формат, в другую UTF8. В качестве демонстрационной базы данных использую Northwind, поставляемую с RAD Studio.
Как видно на рисунке, тестировалась работа компонентов dbExpress, MyDAC, UniDAC.


Двойной щелчок на компоненте соединения, открываются свойства соединения, прописываем для компонентов необходимые параметры и запускаем.

Я прилагаю пример приложения, который вы самостоятельно сможете запустить на своей RAD Studio.
В результате, как и ожидалось, компоненты dbExpress не смогли соединиться с базой данных и вывалился с ошибкой “TDBXError: Unable to find procedure DBXLoader_GetDriver”. Которую было не просто отловить из-за отсутствия в компоненте обработчика Connection Timeout.

Компоненты MyDAC и UniDAC мгновенно соединялись с MySQL и считывали записи.
Моя задача решена, переписываю решение в рабочий проект. Надеюсь и вам будет полезен этот пример.
...
Рейтинг: 0 / 0
Пример создания Android приложения в RAD Studio 10 Seattle для работы c сервером MySQL.
    #39138951
Pax Beach
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Pax Beach Как видно на рисунке, тестировалась работа компонентов dbExpress, MyDAC, UniDAC.


Изображения в пост почему-то не подгрузились.

Форма тестового стенда:
...
Рейтинг: 0 / 0
Пример создания Android приложения в RAD Studio 10 Seattle для работы c сервером MySQL.
    #39138953
Pax Beach
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Пример создания Android приложения в RAD Studio 10 Seattle для работы c сервером MySQL.
    #39139076
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то после IntelliJ IDEA и Visual Studio не впечатляет.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Разработка под мобильные платформы [игнор отключен] [закрыт для гостей] / Пример создания Android приложения в RAD Studio 10 Seattle для работы c сервером MySQL.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]