ENERGY

Пользователи
  • Публикаций

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

  • Посещение

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

    35

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

  1. unauthorized access to "libqslite.so"

    Перейти на Berlin update 2, в Токио под Android много багов.
  2. Но ведь еще нужно время чтобы в словаре найти сответствие.
  3. Проще использовать бинарный поиск для поиска своего индекса-идентификатора контрола, готовый бинарный поиск реализован в TList и его потомках, также в массивах.
  4. Использование SSL

    Лучше спросить у хостера. Обычно у них в панели есть кнопка для включения этого - ткнул и появился https c сертификатом от Let's Encrypt.
  5. Это можно сделать если поставить Alarm. Если прога выгружена - она загрузится, если в фоне, то выйдет из фона. А уже есть такой вопрос, ну пусть ссылка будет на этот форум, здесь можно спросить Андрея Ефимова по этому вопросу и в целом там важные ньюансы в комментах.
  6. Самый простой и быстрый вариант уже указали - TagObject, здесь самое сложное это вытащить из указателя дженерик класс. Я не знаю возможно ли это вообще, т.к. встречал на стэке инфу о том что никак. Самый простой вариант использовать классический TObjectList, НЕ дженерик тогда вытащить ссылку из TagObject просто - TagObject is TObjectList, TagObject as TObjectList или TObjectList(TagObject). Если нужно отличать один TObjectList от другого, я бы отнаследовался от него и сделал свой метод Add где устанавливал бы в Rect ссылку на список, там же можно добавить функцию для определения ID списка из Rect, а также ввел какой то идентификатор для списка.
  7. Согласен, я только добрался до компа. Owner TComponent, а TObjectList <T> дженерик, а не обычный TObjectList еще больше усложняет. Как вытащить дженерик из указателя я не курсе, с обычным TObjectList это просто, но это уже другой вопрос.
  8. Android (iOS) popup

    Use TListBox as a Popup menu. Does TPopup already work nice on mobile OS? Here is how to: https://community.embarcadero.com/blogs/sarina-dupont-senior-product-manager/entry/creating-an-overflow-menu-on-android-463
  9. Использование SSL

    Имхо лучше использовать нативный THttpClient из System.Net.HttpClient. Там есть и SSL - ставишь бесплатный Https сертификат на сервер, и как обычно использушь THttpClient - он автоматом (празрачно) будет шифровать и расшифроывать https трафик. Причем также шифруется Get\Post строка с параметрами.
  10. При создании TRectangle - нужно указывать кто Owner - владелец, вместо nil. У каждого Rectangle Owner и будет нужный класс TObjectList . И вообще нужно всегда указывать Owner - ведь TObjectList отвечает за их уничтожение, это основная фича владельцев. Я недавно баг поймал с фреймом - если при создании TFrame указать Owner nil - то на фрейме не будет работать анимация TFloatAnimation . Так что TFrame.Create(Self формы) - все заработало.
  11. High(CartList) - CartList это или Enumeration type - перечисление или массив. В Enumeration значения идут от нуля. Т.е. TMyType = (Val1, Val2, Val3) - это по факту Byte со значениями 0, 1, 2. High - вернет максимальный индекс из этого перечисления или массива. High(TMyType ) = 2 . Low соответсвенно вернет первый индекс - 0 или тот который идет первым (ведь массив может и не от нуля начинатся, если это указать в коде) rz - обычная переменная integer Если 0 to 0 - цикл не выполнится.
  12. Что невозможно сделать на Delphi для Android?

    Delphi хоронят уже лет 15, это все слова. Нет идеальных инструментов. У всех какие то косяки, втч и у нативных средств, ведь все это придумывают люди, люди не роботы. На деле Delphi отличное средство для мультиплатформенной разработки вполне сложных программ. Мне как фрилансеру вполне хватает. Производительность гораздо лучше чем у Angular\Ionic, которые по факту WebView - веб в браузере - очень тормозное решение и подходит только для формочки "логин\пароль". Также по производительности и глюкам Delphi имхо лучше чем ReactJS, и Xamarin aka Mono. Во фрилансе огромная конкуренция, в основном индусы, в этом плане с Delphi можно быстрее разработать ПО чем предлагают сроки остальные. Проблема Делфай в том что оно дорогое, и не так распространено - (это взаимосвязанный фактор) - таким образом сложно найти команду и мало проектов на нем разрабатывается, меньше сообщество и меньше документации и библиотек с готовыми решения Поэтому для одиночек это больше подходит. Но конечно нужно смотреть на развитие - вот Токио получилась очень сырым продуктом, я до сих пор на Берлине пишу под 4 платформы, если следующая версия выйдет такой же ультраглючной, то следует задуматься. А вообще хороший программист - это тот кто знает несколько языков, не бойтесь учить новое - опыт ускорит разработку с любым инструментом.
  13. Выйдет Android GO - “Android 8 Oreo (Go Edition). Это урезанный Андроид, для бюджетных смартов. https://www.theverge.com/circuitbreaker/2018/3/1/17052912/what-is-android-go To address those problems, Google has done three things: Make Android run better on phones with 1GB of RAM or less Make Android (the OS itself) take up less space Make Android’s preinstalled apps take up less space and use less data Кстати Android 8 на данный момент хуже оптимизирован чем 7 (Android One - чистый Android без надстроек производителя). У меня смарт обновился до 8, поюзав его некоторое время - я перепрошил обратно на Android 7 - он очень быстрый. В 8 были заметны проблемы с производительностью ,к примеру при быстром переключении Оперы она слегка подлагивала и мерцала. При этом смарт у меня мощный - видео в 4к 30 fps , GTA SA на максималках, 4 гб оперативы.
  14. [Отклонение] TFloatAnimation и TFrame

    Столкнулся с такой же проблемой, если любой компонент (в моем случае TImage ) лежит на фрейме не работает TFloatAnimation вообще. Решение: При создании фрейма нужно указывать Self формы, а не nil. : MyFrame := TMyFrame.Create(Self);
  15. Книга для сишников

    Да Осипов молодец, прям удивляюсь его производительности. И для Delphi сколько качественных книг уже выпустил и для С++. Интересно на каких форумах он обитает?
  16. Читая такие топики, каждый раз про себя радуюсь что не стал переходить с Берлина... Из новых фич Токио - одни баги...
  17. Токио сам по себе довольно глючный, особенно до обновления 10.2.3 там и без таймера баги с анимацией, эффектам и низким FPS на ровном месте, в этом случае лучше Берлин использовать (что я и делаю под Android и iOS (Xcode 9 btw) ).
  18. Желательно выбирать тот SDK, который советует EMBT т.к. он протестирован = более стабильная программа (прога все равно будет прекрасно работать под последним Android 8). Плюс еще новый SDK сам по себе может быть сырой. Но скоро нам всем придется делать с последними SDK : Starting in late-2018, all new and updated apps will be required to target an SDK that is no more than 1 year older than the current codename release. https://www.androidpolice.com/2017/12/19/play-store-require-new-updated-apps-target-recent-api-levels-distribute-native-apps-64-bit-support/
  19. Сглаживание при рисовании в буфер bitmap

    Итак на Android и iOS нет сглаживания при отрисовке примитивов (линий, кругов, вектора). Метод 1 (Native Draw, Delphi ONLY ) - лучший и простой. На Canvas PaintBox рисуем как обычно. Если нужно нарисовать на Canvas Bitmap'a, а не на PaintBox, тогда нужно правильно подготовить Bitmap: if Scene <> nil then lScale := Scene.GetSceneScale else lScale := 1; fBitmap.BitmapScale := lScale; fBitmap.SetSize(Ceil(Width * lScale), Ceil(Height * lScale) ); Все детали здесь, также там ссылка на сайт (используйте гугл переводчик) https://github.com/OneChen/FMXNativeDraw Если нужно сохранить в Bitmap, то делаем PaintBox.MakeScreenshot (TControl.PaintTo) в результате получаем сглаженный Bitmap. Кстати вызвать PaintTo не получится в Paint и Afterpaint методах текущего контрола - будет циклический вызов Paint и в результате переполнение стэка, нужно делать это в AfterPaint формы или фрейма. Метод 2. http://riversoftavg.com/blogs/index.php/2016/06/09/use-supersampling-for-offscreen-bitmaps-on-delphi-mobile/
  20. TControl.MakeScreenshot Итак если кому то нужно сделать Bitmap со сглаживанием под Android\iOS, то здесь описано как:
  21. Как скопировать Canvas PaintBox в Bitmap?

    Что-то не нашел готового метода. Рисую при помощи NativeDraw (https://github.com/OneChen/FMXNativeDraw) на PaintBox - все замечательно. Есть сглаживание. Если рисую с NatvieDraw на Bitmap - то нет сглаживания. Хочу попробовать с PaintBox скопировать в битпам.
  22. TBitmap сглаживание

    Немного оффтоп, но все таки ..
  23. THTTPClient асинхронность

    Значит вы не используете https. Поищите на форуме по словам Indy https (ssl) Android 6 http://fire-monkey.ru/topic/1922-android-60-не-удается-загрузить-ssl-библиотеку/ http://fire-monkey.ru/forum/368-ssl/
  24. Возможно проще будет хранить в TiniFile файле, если их немного. К примеру языковой файл - пару килобайт самое то. Просто и быстро. В Delphi для работы с файлами используют стримы. AssignFile устарел еще лет 15 тому назад, это наследство из ТурбоПаскаля. См TFileStream и др. - их нужно использовать.