Перейти к содержанию
Fire Monkey от А до Я

Barbanel

Пользователи
  • Постов

    414
  • Зарегистрирован

  • Посещение

  • Победитель дней

    36

Сообщения, опубликованные Barbanel

  1. 3 минуты назад, Vitaldj сказал:

    Доклад вызвал большой интерес. Особенно у практических врачей.

    Это реально круто! Радует!

    3 минуты назад, Vitaldj сказал:

    Ближе к лету дам на пробу. 

    Ой-ё! Шире вселенной горе моё!
    ?

  2. 9 минут назад, Tumaso сказал:

    Готов посмотреть ?

    О, и правда! Присоединяюсь!

    В 02.04.2019 в 15:32, Vitaldj сказал:

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

    Кстати, как прошел доклад?
    Врачи были заинтересованы такими специализированными разработками?
    Как в целом приняли?

  3. 3 минуты назад, Bob32 сказал:

    БД SQLite - это какая-то локальная субд? (исполняемая на телефоне) и почем этот платный UniDAC? Где Вы его берете? )

    SqLite - это тоже почти стандарт для маленьких БД на мобильных устройствах (ну или в принципе маленьких локальных БД). Однопользовательская. Очень упрощенная.

    Цены на UniDAC можно найти здесьЯ не агитирую за них, просто в нашем случае было необходимо шифрование. Купили, и с тех пор используем везде, удобно.

  4. То что нужно, респектищще!!!

    Я не силен в php, но меня этот момент смущает:

    7 минут назад, Евгений Корепов сказал:

    // читаем файл и отправляем его пользователю if ($fd = fopen($BinatyFilePath, 'rb')) { while (!feof($fd)) { print fread($fd, 1024); } fclose($fd); }

    В случае реально большого файла (пару гигабайт), не вылетит ли скрипт с превышением времени выполнения?
    Раньше для выполнения php скриптов был таймаут в 30 сек по дефолту, и если скрипт выполнялся более 30 сек то генерировалась ошибка и клиент получал эту ошибку.
    Как будет в этом случае?

    Или этот скрипт не рассчитан на большие бинарники?
    Заранее спасибо!

  5. 17 минут назад, Евгений Корепов сказал:

    Вот как то так.

    Евгений, спасибо за хостера!
    Мучаюсь примерно такими же размышлениями как и топикстартер. В смысле, хостер + скрипты + передача данных для (в теории) дофига клиентов.

    Заодно вопрос по JSON. Сегодня это почти де-факто стандарт обмена текстовыми данными. А вот каким образом будет лучше всего передавать с сервера на клиент изображения или бинарные данные? Вернее, что сейчас является наиболее общепринятым способом?
    Мысли такие:
    1) генерировать прямую ссылку
    2) кодировать в Base64 и передавать прямо в тексте JSON
    3) Для передачи больших данных - извращаться с FTP (звучит бредово, но такая мысль проскальзывала)
    4) ???

  6. 16 минут назад, haword сказал:

    у каждого свое мнение

    Согласен, у каждого свое.
    Мое - из опыта. Мы в свое время заморочились с "правильным" подходом, и прозевали конкурента с похожим функционалом. Было пипец как обидно.

    FireMonkey без сомнений имеет свои недостатки и глюки. Но для тех кто знаком с Дельфи - это простой способ выпуститься на мобильных устройствах.
    FireMonkey без сомнений проигрывает нативным языкам, но выигрывает в скорости разработки.

    Что выбирать - каждый решает сам исходя из своих задач и возможностей.

  7. 33 минуты назад, haword сказал:

    бесплатный совет - для СТАРТАПА с количеством пользователей хотя бы от 1000 человек, лучше использовать нативные средства разработки, Xcode и Android Studio

    При всем уважении, позвольте не согласиться.

    Именно для стартапа в условиях 100500 ограничений лучше написать одно приложение сразу для всех платформ (может быть поначалу страшненькое и кривенькое), но одно. Быстро и просто.
    Это называется MVP - minimal value product. Как только он начнет работать - можно набирать юзеров и идти к инвесторам.
    Потом уже можно либо причесывать это одно приложение, либо переписывать его для каждой платформы нативно.
    Все имхо.

     

    8 часов назад, Bob32 сказал:

    Теперь Вопросы, на которые хочется получить ответы бывалых:

     

    8 часов назад, Bob32 сказал:

    Делаем базу на MSSQL, которая хостится на каком-то коммерческом хостинге. Прямой доступ к базе не используем, тк это моветон

    Вы вероятно опечатались и имели в виду MySQL. "Прямой доступ не используем" - это не моветон, это безопасность прежде всего, а сегодня еще и GDPR, с которым к сожалению нужно мириться и поддерживать.

     

    8 часов назад, Bob32 сказал:

    1) Где хостить эту базульку?

    Не имеет значения. Подходит любой хостинг с MySQL и PHP. PHP - это и есть та самая "типовая примочка сверху"))))

    8 часов назад, Bob32 сказал:

    3) MSSQL - нормальный выбор для данной задачи? у меня есть опыт работы с MS SQL. MySQL выбран из-за некоторой похожести и бесплатной лицензии.

    MSSQL - почти всегда нормальный выбор. Но: это виндовс инфраструктура, а хостеры с виндовс сервераит встречаются в природе реже и берут больше (моя инфа может устареть, но там где я работаю пока так). Это первое. Он платный - это второе (да, есть и бесплатные лицензии, но они с ограничениями). 
    MySQL - Для 50к человек не могу сказать что идеальный выбор, но вполне нормальный. Имхо, главное чтобы не 50к одновременных подключений.
    В целом, для первичной разработки и запуска стартапа разница между этими двумя БД небольшая. В обоих случаях SQL, с минимальными различиями.

    8 часов назад, Bob32 сказал:

    4) (чувствую, щас в меня полетят помидоры ;-|) ) Какие компоненты нужно использовать для доступа по данной схеме к данным на стороне Дельфи? (я начинающий программер под firemonkey - извините....)

    Невопрос, держи помидор)))) Мы используем UniDAC и БД SQLite. UniDAC позволяет шифровать на лету эту БД и работает превосходно на всех используемых платформах (Win, iOS, Android, Mac OS). Компонент платный. За другие не могу сказать, не использовал.

    8 часов назад, Bob32 сказал:

    5) Нормальная ли вообще это схема или Вы можете порекомендовать что-то другое, более простое и типовое, в плане реализации этой  схемы организации доступа к единым централизованным данным приложения?

    Имхо - нормальная, но... мы ж легких путей не ищем, сами себе создаем трудности и потом их героически преодолеваем))))
    Если целью стоит именно приложение - схема вполне нормальная, так все делают: приложение + сервис-бекенд.

    Что-то другое будет сайт, реализующий тоже самое. Проще это или тяжелее - зависит от ваших разработчикой и целей проекта.

  8. 27 минут назад, Heinrich сказал:

    Halt(0) сворачивает приложение несколько по иному, но оно всё равно остаётся в процессах висеть.

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

    Я конечно не эксперт, но боюсь что то что вы хотите это слишком нестандартное поведение, и врядли в дельфи это реализовано.
    Если не секрет, для каких целей вам нужно настолько хитрое поведение?

  9. Это связано с тем, что у таймена не наивысший приоритет, а как раз наоборот. События таймер выполняются когда приложение (и сама ОС) простаивает.
    Т.о. пауза между вызовами событий таймера не всегда одинакова, а сдвиг же в свою очередь всегда на фиксированное значение.
    Если же вы будете сдвигать изображение на значение пропорциональное реальному интервалу между событиями - рывки будут менее заменты на глаз (хотя все еще будут возникать).

  10. 27 минут назад, Letos сказал:

    Прикрепляю скомпилированный exe, который должен у вас запуститься.

    Посмотрел. Возможно у меня слишком производительный пк, потому что я ничего критичного не вижу.
    На глаз выводится 20-30 фпс, каких-либо рывков я не вижу. ¯\_(ツ)_/¯

    Имхо, для диспетчера депо вполне норм)

  11. 1 минуту назад, Letos сказал:

    слышал, что эти методы используются в FMX

    Насколько мне известно, эти методы не используются. Может использоваться GDI (это из другой области) либо ЦПУ.

     

    22 минуты назад, Letos сказал:

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

    Аналогично, сори за грубость)

  12. 5 минут назад, gonzales сказал:

    Пипец задачка(((((

    Костыль-драйвен-девелопмент)))

    Создаем список с коллбеками и задержками.
    В таймере пробегаемся по задержкам, и после каждой вызываем соответствующий коллбек.

    Это на правах шутки.
    Если честно, я сам не очень понимаю как разрулить такое нововведение. Нужно читать что пишет сама эмбаркадеро о этом новшестве. Должен же быть какой-то альтернативный способ.

  13. В 02.03.2019 в 17:27, Letos сказал:

    Переписать? Я и обратился с просьбой совета - как написать.

    Доброго времени.

    Я не могу вам сказать где именно ошибка (я даже не уверен что она есть), вы пишете я С++, а у меня лишь Delphi под руками. Я скачал ваш проект и запустил ехе. К сож. он не запустился на моей матине из-за отсутсвующих библиотек rtl250.bpl
    Соотв. я не вижу как работает приложение, и как выглядят ваши фризы.
    Судя по всему вы пытаетесь сделать игрушку, либо что-то аналогичное. Делать игрушку используя один лишь FMX или VCL имхо нелогично, т.к. эти платформы не предназначены для быстрой и плавной отрисовки графики.
    Если вам реально необходима плавная отрисовка - используйте либо OpenGL либо DirectX. Вот здесь то и будет на все 100% "аппаратный скролл".
    Это и есть тот совет, "как" написать.

    В 02.03.2019 в 18:59, Letos сказал:

    Спасибо. Но этот форум-то для чего? Тем более, что Brovin Yaroslav просматривал мою тему и позиционирует себя как один из разработчиков FMX!

    Этот форум как раз для этого предназначен, и количество постов как раз тому подтверждение. Есть только одно НО:
    никто здесь не обязан сразу броситься и настрочить вам готовое решение. Если человек имеет представление где может быть проблема, и что еще более важно - имеет время и желание писать ответ - он вам ответит.
    Далеко не каждый из тех кто прочитал тему может или хочет вам (или мне, или кому-либо еще) отвечать.

    Ярослав же и так имеет чем заняться и совершенно не обязан отвечать в каждой теме. Вы не спрашиваете на форуме MSDN почему вам лично мистер Гейтс не отвечает.

    Ок, это было отступление.
    Если вы хотите примеры как использовать графические библиотеки - вам на немного другие специализированные форумы типа gamedev.ru
    Конкретно для Delphi и OpenGL я могу дать такую ссылку sulaco Здесь множество простейших примеров использования OpenGL, я в свое время именно здесь его и осваивал. 

  14. Дался вам этот аппаратный скроллинг!!!

    Чтобы скроллить что-то, нужно сначала это что-то отрендерить полностью. FM не рендерит скроллбокс целиком, только его видимую часть. Чтобы проскроллить контент, FM каждый раз заново перерисовывает контент.

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

    Забудьте о этом и живите дальше. Перепишите приложение либо разберитесь с тем что у вас происходит в момент фризов.

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

  15. 1 минуту назад, Сергей Сергеев сказал:

    Не нашел файл FMX.Pickers.Android - где они?

    C:\Program Files (x86)\Embarcadero\Studio\20.0\source\fmx

    4 минуты назад, Сергей Сергеев сказал:

    И еще меня смущает нативность этих элементов, коллеги утверждают, что в разных Версиях они разные, а тут одинаковые..

    Я смутно помню что раньше (в Берлине например) эти диалоги выглядели иначе. Потом эмбаркадеро помоему стала вызывать более современный диалог.

    Специально откопал древнюю версию нашей программы, посмотрел.
    Левый девайс - Андроид 6, сборка на текущей версии студии, диалог современный.
    Правый девайс, Андроид 7, старая версия приложения, диалог тоже чутка древний.
    Стиль диалога 100% не изменялся вручную.

    Вывод: они разные, но в разных версиях студии а не андроида, независимо от стиля.

    IMG_20190226_153504.jpg

  16. 2 минуты назад, Сергей Сергеев сказал:

    проект один - из Sample DatePicker, разные стили цепляю ( т.е. загружаю файл *.style в StyleBook) Delphi - получаю разные цвета .. вряд ли при этом xml файл меняется.. неужели не предусмотрена возможность менять? и даже отключить это непонятно как.. разве что не использовать TDateEdit..

    Цветовая схема прописывается в файл styles-v21.xml самой средой.
    Подозреваю что туда она попадает из style-файла. Если открыть style в текстовом редакторе то можно найти секцию TStyleDescription. В ней прописаны цветовые схемы в разделе PlatformTarget

    Больше упоминаний о стиле я нигде не нашел.
    Могу конечно же ошибаться, поправьте меня.

×
×
  • Создать...