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

Akad

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

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

  • Посещение

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

    2

Весь контент Akad

  1. А тут уже была такая тема, можно поискать, я туда тоже что-то постил. Но судя по активности и лайкам она тутошним не зашла.
  2. Я за ~полгода поправил кучу ошибок разработчиков FMX, многие из которых, кстати, до сих пор в основной поставке остались. Это были как просто глюки с отрисовкой/перерисовкой, так и утечки памяти и AV из-за того, что долбики сначала убивали что-то а потом из другого места с нему лезли. Качество кода говорит о том, что его писали программисты, получавшие за свою работу в пределах $500-800. Т.е. кого эмба за 3 копейки нашла, того и наняла. Ну они на 3 копейки и нарабатывали, так что тут всё чётко, ни каких претензий. Надо было сразу внимательно код смотреть. В Борланде были высококлассные спецы, я к этому привык... Ну даладно. Затем впёрся в AV после закрытия формы с браузером. Даже здесь просил помощи, но ни кто ничего не подсказал. Так как программа является частью CRM по доставке еды, и браузер с картой - это очень важная её часть, все было переписано на VCL. Использование FMX было заложено что бы сделать ещё 5 приложений на единой кодовой базе под андроид/яос. Но после первого из них стало понятно, что FMX очень тяжёлый, и на целевых телефонах - телефонах наших курьеров банально нет под это приложение столько памяти. Поэтому эти проекты были свёрнуты после первых испытаний. Надеюсь донёс свою точку зрения. И кто-нибудь прочитав этот пост не совершит мою ошибку, и обойдёт FMX стороною. Повторюсь VCL стабильна. Но её писала не Эмба.Да и стандартных компонент из поставки думаю ни только мы, а вообще ни кто не использует. Практически всегда есть бесплатный и более качественный аналог.
  3. FMX так и умер не влетев. В 10.3 ещё больше проблем, чем в 10.2, в 10.2 чем в 10.1.Хотя и 10.1 не возможно было использовать в продакшене. Ждём сейчас FGX. Уж очень интересно попробовать единую кодовую базу с VCL иметь, и что бы это в продакшене могло работать. Хотя с учётом того, что бетку обещали ещё в начале осени, а до сих пор идёт закрытое тестирование, то по ходу шансов заполучить что-то рабочее в ближайшее время не много.
  4. Во-первых запускать из-под винды программыв надо через CreateProcess, а не ShellExecute. Во вторых зачем label? У него даже hwnd нет. Проще создавать mutex. Он живёт пока живо приложение. Соответственно если создать не получилось, значит его создал кто-то другой.
  5. Скажу даже более: Postgre+Свой сервер написанный на 10.2+Firemonkey (win/android) проработал в продакшене 5 мес. Сейчас планируем переписывать на Go+VCL. А андроид часть скорее всего на ейной студии, но наблюдаем за FGX. Нагрузку серверные сокеты держат плохо. А клиенты отвратительно работают на зоопарке железа. Причём проблема даже под win отобразить на некоторых ноутбуках интерфейс. Так что ждём FGX native. Firemonkey в продакшене вещь не рабочая ни на одной из поддерживаемых OS.
  6. Любую отладку под андроид стоит начинать с adb.exe logcat >1.txt и смотреть где упало и почему. И делать выводы.
  7. MouseUp контролла естественно не будет. И я не о нём, а о форме.
  8. Имхо правильнее всего отслеживать перемещения "мышки" по форме, и выставляя предварительно флажок, что сейчас таскается этот бар. Под винду выходил в своё время из положения именно так. Под андроид не уверен как ходят события - думаю примерно так же.
  9. Как бы это по мягче сказать.... он (почти) работает. На андроиде работает (хоть как-то) только он, на винде глюков в несколько раз меньше стокового. Я про российский компонент. TRichView. Даже бэкап сайта на его основе делал. Честно скажу - 700к в него не пихал, но порядка 80-100к - живал без проблем.
  10. Обработка ява-скрипт команды занимает некоторое время и происходит асинхронно. Поэтому если сразу сделать репаинт - ничего не изменится. P.S. Что за ОС? Как ведёт себя браузер от TMS? Вообще если статический html и якоря, то на дельфе лучше richedit какой-нибудь сторонний использовать... Ну это так, к слову.
  11. Мммм... Поспорим? Значит цикл выполняется. Просто у Rad Studio не все "ходы на мобильных платформах записаны". По крайней мере на 10.2 встречал, что крусор отладчика или прыгает взад-вперед, или пропускает небольшие блоки. Он есть в коде, рядом с циклом. Его длинна - это параметр цикла. Как может не иметь к нему отношения - для меня загадка. Это реально или ваша фантазия? Стоит это значение смотреть в какой-то отдельной переменной. Цикловые переменные шанс корректно увидеть - это 1/2 или 2/3.
  12. Что такое CartList? Зачем High использовать (от слова вообще)? Что такое rz? Если for 0 to 0, то 1 раз цикл выполнится. P.S. Почему бы на форумах не перестать считать всех телепатами?
  13. 2 камня преткновения:synchronize - глючито что пц на 10.х и webbrowser так же падает с вероятностью ~1/3 при form.free на тех же самых версиях. Поэтому что платно, что бесплатно - один хрен не работает. Имхо. У дельфи есть будущее, если сменятся продакт менеджеры. На кого-то, кто разбирается в проблеме. Слишком много развилось хомячков, кто начитается хабра и ко и мнит себя мега-умным-гением.
  14. Запомнить фокус, показать форму, вернуть фокус?
  15. Ни где это не указано. Не надо. Тема в общем форуме, ни в названии, ни в теле поста этого нет. Не умеешь задавать вопросы, не надо тра-ля-ля разводить. Не ко мне вопрос, а к разработчикам ОС. Если у тебя не правильно организована работа твоей поделки, то ни кто кроме тебя в этом не виноват. Не хочешь помощи - что ты вообще на форуме забыл? Иди на какую-нибудь помойку типа хабра, описывай там как надо софт писать.
  16. Есть смысл переходить с 10.2.2 на 10.2.3? Народ тут писал, что студия вылетать стала на ровном месте. А судя по чейнж логу ни одного серьёзного бага поправлено не было. Во-первых интервал в 1мс для таймера не достижим без специальной настройки ОС. Реально события будут приходить 10-23мс. И это при условии, что программа больше ничего не делает. Это не зависит от дельфи, а зависит от винды. Во-вторых "накладные расходы" таймера при таком обновлении - это основная статья расходов процессора. И вообще так писать - это просто жесть. Любая анимация - это 1000/60мс т.е. частота обновления среднестатистического монитора. И то лучше 1000/30 или 1000/25. Меньше плавности на чуть, зато будет реально работать. Если нужна не анимация, а рассчёт чего-то - это надо выносить в отдельный поток. Если речь идёт про андроид/яось, то кроме нескольких деталей в целом ситуация не меняется. Писать так нельзя.
  17. Сохранил все (с). Не соберётся с ходу, так как тянет LACore.Log. Можно убрать полностью или заменить на своё. LACore.XML.pas.zip
  18. record можно сохранять в файл через blockwrite, если там только атомарные элементы. String имеет сложную структуру, и этот фокус не прокатит. Так что либо сериализовать/десериализовать структуру через RTTI и потом сохранить в бинарный/XML... файл, или ручками в базу/ini/StringList... в общем в более высокоуровневую запись.
  19. Можно по подробнее, что за проблемы? В руках 2 телефона на 6 и 1 на 7.1 - ни где у меня с клиентом проблем нет.
  20. Если использовать структурированный xml, то да, проблем не будет. Но если на каждом уровне вложений вообще не знаешь что там есть, но надо пробежаться по всем нодам, и собрать определённую информацию, то начинается просто АД. У меня парсер, позаимствованный и чуть допиленный у Light Alloy - вот это вещь. Всё быстро, чётко, не единого эксепшена, поиск через SameText, и прочие вкусняшки. На вкус и цвет фломастеры разные.
  21. Ээээ...Что бы избавиться - должна быть альтернатива. Для сети в дельфи есть только комплект инди компонент. Они нормально работают с шифрованием и парой десятков протоколов. Альтернатив им нет ни стандартных, ни альтернативных. Или я что-то пропустил? THTTPClient/THTTPServer - это даже не смешно. Особенно последний - который половину соединений пропускает при хоть какой-то нагрузке. Клиенту после этих фокусов сервера доверия нет. И смысл только его использовать, даже если он работает болемешно, если есть инди с единой архитектурой и базовыми структурами данных? Где тебе сразу и tcp и udp и smtp и так далее? И всё в едином стиле Ни кого не хотел обидеть. Я тоже процентов на 40 дельфи программист. Последний мой проект (пока) на дельфи целиком. А это сервер и клиенты под разными ОС. Но достаточно зайти на любой ресурс где "тусят крутые, всезнающие хомячки" типа хабра, и послушать их мнение про Delphi в целом, и программистов, которые пишут на этом языке в частности. При всём идиотизме их заявлений, рациональное зерно там можно проследить. И если весь мир делает в архитектуре приложений определённые паттерны, то наверно не спроста, и незачем делать по другому.
  22. TIdHTTP - попробуйте асинхронно что-то сделать. Только в потоке. Все другие indy - тоже самое. Остаются всякие страшные TcpClient1 которые из версии в версию то работаю то не работаю. Причём http - ручками. Ещё то удавольствие. Сейчас под всеми платформами, что мне известны продвигается синхронный метод+callback. Что диез под виндой, что RxJava/Retrofit под андроид и т.д. Если используете что-то не традиционное - ни каких проблем. Но зачем это советовать другим? Поддерживать стереотип, что программист дельфи - быдлокодер-неформал?
  23. Ждём лета(?) и закрытого тестирования. И потом будем посмотреть. Сейчас как я понял говорить о чём-то совсем рано.
×
×
  • Создать...