Jump to content

Yaroslav Brovin

Administrators
  • Posts

    2,567
  • Joined

  • Last visited

  • Days Won

    647

Everything posted by Yaroslav Brovin

  1. Download: The distributive is available by request only. Release date: 17 March 2022 New ✨ TfgFacebookLoginAuthenticationClient The new component TfgFacebookLoginAuthenticationClient was added. It allows to identify user via FacebookLogin service. The component is also cross-platform. However the component is implemented only for iOS platform at this moment. TfgVKLoginAuthenticationClient The new component TfgVKLoginAuthenticationClient was added. It allows to identify user via VKLogin service. The component is also cross-platform. However the component is implemented only for iOS platform at this moment. Improvements 🙌 Now all forms are being automatically destroyed, when iOS is being terminated like in Android. Bug Fixes 🐛 FGX-166 PagerLayout with TAB scroll (issues using animation Form Show from the second page) (Android). FGX-167 Incorrect rendering pages of TfgPageControl (iOS). FGX-168 TfgActivityIndicator is not being animated after hiding/showing (iOS). The crashing Android application was fixed in case of usage Delphi 11.1. The error is related to a change in the interface part of the Android RTL bridge in the update.
  2. Скачать: Релиз доступен только по запросу. Дата релиза: 17 марта 2022 Новое ✨ TfgFacebookLoginAuthenticationClient Новый компонент авторизации через сервис FacebookLogin. На текущий момент реализация только для iOS. TfgVKLoginAuthenticationClient Новый компонент авторизации через сервис VKLogin. На текущий момент реализация только для iOS. Улучшения 🙌 Теперь при завершении приложения на iOS, все формы автоматически уничтожаются, как и в Android. Исправление ошибок 🐛 FGX-166 PagerLayout сбрасывает текущую вкладку при открытии формы (Android). FGX-167 Некорректное отображение страниц TfgPageControl (iOS). FGX-168 Проблема с отрисовкой TfgActivityIndicator на TfgCollectionView (iOS). Исправлена ошибка падения Андроид приложении при использовании обновления Delphi 11.1. Ошибка связана с изменением интерфейсной части Android RTL моста в обновлении.
  3. Мы используем skia4Delphi версии 3.0.3. Поэтому поскольку dll разделяемый ресурс, лучше использовать временно версию 3.0.3, если вы используете skia4delphi в других ваших проектах. Буквально на днях вышла версия 3.1.0, которая судя по коду нацелена на создание статической версии библиотеки. Но пока я не увидел об этом упоминаний. Так что, как только выйдет поддержка статики для Skia4Delphi мы сразу интегрируем ее и она не будет конфликтовать с библиотекой установленной пользователем.
  4. Скачать: Релиз доступен только по запросу. Дата релиза: 25 февраля 2022 Исправление ошибок 🐛 Исправлен сбой загрузки библиотеки на Delphi 11. Улучшена обработка события OnTap для TfgButton и TfgAppleIdButton. Теперь если пользователь при нажатии пальцем на кнопку сместил палец, то нажатие все равно произойдет (iOS). Улучшено качество отрисовки иконок в TfgImage и других компонентах (iOS).
  5. Download: The distributive is available by request only. Release date: 25 February 2022 Bug Fixes 🐛 Fixed library loading failure on Delphi 11. The handling o OnTap event for TfgButton and TfgAppleIdButton was improved. Now, if user moves finger over the buttons, the tap event will occur (iOS). The quality of rendered icons was improved for TfgImage and other components (iOS).
  6. Download: The distributive is available by request only. Release date: 24 February 2022 New ✨ TfgLottieImage The new component for playing Lottie animation was added Lottie. Details. Improvements 🙌 TfgCollectionView The actualization of items selection (removing, inserting, moving) was improved in case of usage NotifyItemsInserted, NotifyItemsRemoved and NotifyItemMoved methods. Bug Fixes 🐛 FGX-162 The event TfgCollectionView.OnItemSelectionChanged doesn't work. FGX-163 FGX.Animation.Templates - Shake for a component with PositionMode = Absolute shifts the component to the left after it is applied. The event OnLongTapItem didn't work for TfgCollectionView, if GestureKinds is empty (iOS).
  7. Скачать: Релиз доступен только по запросу. Дата релиза: 24 февраля 2022 Новое ✨ TfgLottieImage Новый компонент для проигрывания файлов анимации Lottie. Детали использования. Улучшения 🙌 TfgCollectionView Улучшена актуализация обновления при частичных изменениях элементов (удаление, вставка, перемещение) при использовании методов: NotifyItemsInserted, NotifyItemsRemoved и NotifyItemMoved. Исправление ошибок 🐛 FGX-162 Не срабатывает событие TfgCollectionView.OnItemSelectionChanged. FGX-163 FGX.Animation.Templates - Shake для компонента с PositionMode = Absolute сдвигает влево компонент после применения. Событие OnLongTapItem не работал у TfgCollectionView, если GestureKinds пусто (iOS).
  8. Hello Ronald, You have subscribtion for 1 year at this moment, which will end in December. Do you really want to prolongate one 1 year more...? I don't think you should worried about SWIFT at least at this moment. So I think, you can wait 🙂
  9. Обязательно нужно добавлять. Android.jar - это по сути Java часть реализации Андроида. В нее входит в том числе Java SDK, это базовые типы (как в делфи RTL). Любая Андроид библиотека использует как минимум классы из Java SDK, поэтому необходимо для генератора добавить android.jar. В противном случае, если генератор не найдет нужные классы, которые использует ваша библиотека, она просто не будет включать их обертку в делфи хедер.
  10. Hello @Omar Zelaya, We didn't tested working of TBeacon, but it's RTL part, so it should work with FGX Native. If you have any issue with compatibility TBeacon with FGX Native, let me know. Thank you
  11. В этом году нас ждет большое количество новых компонентов и возможностей в библиотеке FGX Native: начиная о завершении добавления iOS платформы в библиотеки, продолжая всевозможными интеграциями мобильных сервисов (оплата, идентификация, встроенные покупки и тд) и заканчивая разработкой новых визуальных компонентов. В последнем релизе 1.13.4.0 мы уже анонсировали добавление сервисов идентификации пользователя в сторонних сервисах. Сервисы идентификации позволяют получить информацию о пользователе используя его учетную запись в других сервисах, таких как GoogleId, AppleID, Facebook, VKontakte и тд. В релизе 1.13.4.0 мы разработали низкоуровневую кроссплатформенную архитектуру сервисов идентификации, которая позволяет нам и вам добавлять реализации любых сервисов идентификации пользователя. Первым таким сервисом стала реализация AppleID (TfgAppleIdAuthenticationClient). На подходе Facebook и другие сервисы. Детально о том, как установить и использовать разработанные компоненты мы поговорим в отдельных статьях. В этой статье нам хотелось бы поделиться одним очень мощным и полезным новым компонентом, которые позволит легко оживить ваше приложение и добавить в него сложные анимации. Речь пойдет о поддержке анимации Airbnb Lottie (https://airbnb.io/lottie) Немного о Lottie Lottie - это библиотека с открытым кодом от компании Airbnb для проигрывания анимации, созданной в приложении Adobe After Effects. Впервые дизайнеры могут создавать и доставлять красивые анимации без того, чтобы разработчик кропотливо воссоздавал их вручную. Анимация представляет собой текстовый файл в формате JSON, в котором содержится описание построения векторного изображения с анимацией. Благодаря чему, файл анимация весит очень мало при этом не теряя в качестве. В библиотеку добавлен новый компонент TfgLottieImage, который позволяет отобразить Lottie анимацию. Как использовать? 1. Для начала надо раздобыть файл анимации. Можно поискать готовые анимации от дизайнеров на ресурсе https://lottiefiles.com/ . Помимо этого ресурса, есть еще и другие. Например, ресурс по встраиванию анимированных иконок: https://lordicon.com/ После выбора интересуемой анимации, скачиваем анимацию в формате Lottie JSON. Например, такая анимация ракеты весит всего 25 КБ: 2022-02-15-00-47-28.mp4 2. После этого добавляем этот файл анимации в дизайнер ресурсов FGX Native. Добавлен новый тип ресурса "Lottie Анимация": После создания нового ресурса, загружаем скаченный ранее файл. В результате чего дизайнер отобразит вам ваш файл анимации. Укажите ресурсу понятное имя, например "Animations\Red Rocket". Разместив на форме новый компонент TfgLottieImage, укажите ресурс анимации через свойство AnimationName. Это все, что требуется, чтобы запустить ракету в космос. Запустив приложение на Android или iOS вы увидите летящую ракету. Lottie-Demo-Sample.mp4 Демонстрационный пример В поставку включен новый демо-пример "Компоненты" -> "TfgLottieImage" -> "Проигрыватель Lottie анимации". Настройки Компонент предлагает базовые настройки. ImageMode - Режим отображения изображения (растянуть, вписать, заполнить). Loop - нужно ли запускать анимацию по кругу. Speed - коэффициент скорости. Например: 2 - проигрывать анимацию в два раза быстрее, 0.5 - в два раза медленнее. Duration - длительность анимации в мсек (без учета Speed). Помимо этого, вы можете проверить проигрывается ли сейчас анимация IsAnimating или управлять воспроизведением через: Play - начать воспроизведение с начала Stop - остановить (Progress сбрасывается на начало). Pause - приостановить Resume - продолжить с текущего места. Progress - установить текущее место воспроизведения. Коэффициент из диапазона [0..1], где 0 - это начало, 1 - конец. Итоги Уверены, данная новинка найдет свое применение в ваших проектах и добавит им изюминки.
  12. В каждой среде открываем: "Главное Меню -> Tools -> Options -> Language -> Delphi -> Library" Для каждой версии делфи нужно использовать свой номер ниже: 10.4 - 270 11.0 - 280 Android 32-bit Library Path: $(BDSLIB)\$(PLATFORM)\Release;$(FGX)\Libs\280\Android\Release;$(FGX)\Libs\Common\Android\Debug\armeabi-v7a Browsing Path: $(BDS)\OCX\Servers;$(BDS)\SOURCE\VCL;$(BDS)\SOURCE\VCL\AppAnalytics;$(BDS)\source\rtl\common;$(BDS)\SOURCE\RTL\SYS;$(BDS)\source\rtl\android;$(BDS)\source\ToolsAPI;$(BDS)\SOURCE\IBX;$(BDS)\source\Internet;$(BDS)\SOURCE\PROPERTY EDITORS;$(BDS)\source\soap;$(BDS)\SOURCE\XML;$(BDS)\source\Indy10\Core;$(BDS)\source\Indy10\System;$(BDS)\source\Indy10\Protocols;$(BDS)\source\fmx;$(BDS)\source\databinding\components;$(BDS)\source\databinding\engine;$(BDS)\source\databinding\graph;$(BDS)\source\data;$(BDS)\source\data\ado;$(BDS)\source\data\bde;$(BDS)\source\data\cloud;$(BDS)\source\data\datasnap;$(BDS)\source\data\dbx;$(BDS)\source\data\dsnap;$(BDS)\source\data\Test;$(BDS)\source\data\vclctrls;$(BDS)\source\rtl\posix;$(BDS)\source\rtl\posix\osx;$(BDS)\source\data\datasnap\connectors;$(BDS)\source\data\datasnap\proxygen;$(BDS)\source\DataExplorer;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\Common;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\Common\dunit;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\Common;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\dunit;$(BDS)\source\DUnit\src;$(BDS)\source\DUnit\tests;$(BDS)\source\Experts;$(BDS)\source\indy\abstraction;$(BDS)\source\indy\implementation;$(BDS)\source\indyimpl;$(BDS)\source\LiveTile;$(BDS)\source\Property Editors\Indy10;$(BDS)\source\soap\wsdlimporter;$(BDS)\source\Visualizers;$(BDS)\source\xtab;$(BDS)\source\DUnit\Contrib\XMLReporting;$(BDS)\source\DUnit\Contrib\XPGen;$(BDS)\source\data\rest;$(BDS)\source\data\firedac;$(BDS)\source\tethering;$(BDS)\source\DUnitX;$(BDS)\source\data\ems;$(BDS)\source\rtl\net;$(BDS)\source\FlatBox2D;$(FGX)\Sources Debug DCU Path: $(BDSLIB)\$(PLATFORM)\debug;$(FGX)\Libs\280\Android\Debug Android 64-bit Library Path: $(BDSLIB)\$(PLATFORM)\Release;$(FGX)\Libs\280\Android64\Release;$(FGX)\Libs\Common\Android\Debug\arm64-v8a Browsing Path: $(BDS)\OCX\Servers;$(BDS)\SOURCE\VCL;$(BDS)\SOURCE\VCL\AppAnalytics;$(BDS)\source\rtl\common;$(BDS)\SOURCE\RTL\SYS;$(BDS)\source\rtl\android;$(BDS)\source\ToolsAPI;$(BDS)\SOURCE\IBX;$(BDS)\source\Internet;$(BDS)\SOURCE\PROPERTY EDITORS;$(BDS)\source\soap;$(BDS)\SOURCE\XML;$(BDS)\source\Indy10\Core;$(BDS)\source\Indy10\System;$(BDS)\source\Indy10\Protocols;$(BDS)\source\fmx;$(BDS)\source\databinding\components;$(BDS)\source\databinding\engine;$(BDS)\source\databinding\graph;$(BDS)\source\data;$(BDS)\source\data\ado;$(BDS)\source\data\bde;$(BDS)\source\data\cloud;$(BDS)\source\data\datasnap;$(BDS)\source\data\dbx;$(BDS)\source\data\dsnap;$(BDS)\source\data\Test;$(BDS)\source\data\vclctrls;$(BDS)\source\rtl\posix;$(BDS)\source\rtl\posix\osx;$(BDS)\source\data\datasnap\connectors;$(BDS)\source\data\datasnap\proxygen;$(BDS)\source\DataExplorer;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\Common;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\Common\dunit;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\Common;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\dunit;$(BDS)\source\DUnit\src;$(BDS)\source\DUnit\tests;$(BDS)\source\Experts;$(BDS)\source\indy\abstraction;$(BDS)\source\indy\implementation;$(BDS)\source\indyimpl;$(BDS)\source\LiveTile;$(BDS)\source\Property Editors\Indy10;$(BDS)\source\soap\wsdlimporter;$(BDS)\source\Visualizers;$(BDS)\source\xtab;$(BDS)\source\DUnit\Contrib\XMLReporting;$(BDS)\source\DUnit\Contrib\XPGen;$(BDS)\source\data\rest;$(BDS)\source\data\firedac;$(BDS)\source\tethering;$(BDS)\source\DUnitX;$(BDS)\source\data\ems;$(BDS)\source\rtl\net;$(BDS)\source\FlatBox2D;$(FGX)\Sources Debug DCU Path: $(BDSLIB)\$(PLATFORM)\debug;$(FGX)\Libs\280\Android64\Debug
  13. Download: The distributive is available by request only. Release date: 30 January 2022 Attention 🚨 You should add to iOS SDK profile new framework "AuthenticationServices.framework" for correct linking FGX Native application for iOS. Open IDE settings: "Tools" -> "Options" -> "Deployment" -> "SDK Manager". Select your iOS SDK profile . Scroll list to "Frameworks" group and select any line in this group. Press add button (On the right side of list). "Path on remote machine:" "$(SDKROOT)/System/Library/Frameworks". "Framework name:" "AuthentificationServices". Execulte downloading required files via "Update Local FileCache" button. New ✨ TfgAppleIdAuthenticationClient The new component TfgAppleIdAuthenticationClient was added. It allows to identify user via AppleId service. The component is also cross-platform. However the component is implemented only for iOS platform at this moment. Setup AppleId. TfgAppleIdButton The new component TfgAppleIdButton was added. It allows to display AppleId button for sign in via AppleId service. You can link the TfgAppleIdAuthenticationClient to button via the AuthenticationClient property and when user clicks on button, it will start process of user identification. You can adjust appearance via Appearance property and change style Style or apply rounding corner via CornerRadius. Since the identification client TfgAppleIdAuthenticationClient is supported only on iOS, the button is currently only available on iOS. When the component is launched on the Android platform, it is automatically hidden. If the AppleID identification is not supported on the current platform, then the button is also automatically hidden by default. This behavior is controlled using the AutoHideIfNotSupported property. Improvements 🙌 TfgCamera The handling of camera permission was improved. Now if the camera permission is being revoked while the application was in the background, the application will not crash. The demo sample was updated "Components" -> "TfgCamera" -> "Camera". Now, if you do not have rights to work with the camera, the application displays a message about this and does not allow you to use the camera. Also in the example, the error of the incorrect handler has been fixed. Also, demo on iOS did not display a preview of the last photo taken. Gestures Gestures LongTap, DoubleTap and Zoom were implemented for basic components iOS. The new demo sample was added: "Gesture" -> "Gesture LongTap - Long press". Other The new demo sample was added showing image display modes, as well as applying a mask: "TfgImage" -> "Display modes". Bug Fixes 🐛 FGX-92 Implement mask mode for TfgImage (iOS). FGX-157 TfgImage.MaskImageName property does not work (iOS). FGX-158 Incorrect work of TfgNumberListPicker and TfgVirtualListPicker (Android). FGX-160 Multi Touch doesn't work on iOS (iOS). FGX-161 TfgPageControl - Bug in creating pages in runtime with usage Theme (Android). FGX-SUPPORT-64 The long TfgToast messages wasn't split into lines (iOS). FGX-SUPPORT-65 The generation iOS application package was fixed for publishing in AppStore, because of which the package was not accepted in the store before (iOS). FGX-SUPPORT-67 TfgListMenu could miss selection, if component was used in TfgDrawerLayout (iOS). FGX-SUPPORT-68 LongTap didn't work for TfgCollectionView (iOS). FGX-SUPPORT-71 Application with TfgCamera was crashed prioir iOS 12 (iOS). FGX-SUPPORT-72 Application with TfgComboBox was crashed prioir iOS 12 (iOS). Barcode scanner did not work (iOS). TfgListMenu included incorrected list of selected items in OnSelectionChanged (iOS). TfgActivityIndicator was visible on application startup despite Visible=False (iOS). Sometimes the size of the final photo TfgCamera was calculated incorrectly. When photographing TfgCamera, the quality of the preview TfgCameraPreview may have changed (iOS). A Bug in RTL Delphi-Android bridge was fixed, which led to crash Android application with location sensor on Android 12 (Android).
  14. Скачать: Релиз доступен только по запросу. Дата релиза: 30 января 2022 Внимание 🚨 Для линковки FGX Native приложения под iOS, необходимо добавить в профиль iOS SDK новый фреймворк "AuthenticationServices.framework". Для этого: Открыть настройки IDE: "Tools" -> "Options" -> "Deployment" -> "SDK Manager". Выбрать ваш iOS профиль в левом списке. Пролистать список до группы "Frameworks" и выделить любую строчку в этой группе. Нажать кнопку добавить (справа от списка). "Path on remote machine:" "$(SDKROOT)/System/Library/Frameworks". "Framework name:" "AuthentificationServices". Выполнить скачивание при помощи кнопки "Update Local FileCache". Новое ✨ TfgAppleIdAuthenticationClient Новый компонент авторизации через сервис AppleId. Настройка AppleId. TfgAppleIdButton Новый компонент отображающий кнопку авторизации через сервис AppleId. Позволяет отобразить кнопку с учетом рекомендаций Apple. Привяжите новый компонент идентификации TfgAppleIdAuthenticationClient через свойство AuthenticationClient и при нажатии на кнопку компонент будет инициировать процесс идентификации пользователя. Используя набор свойств группы Appearance, можно выбрать один из трех доступных стилей Style или скруглить углы кнопки CornerRadius. Поскольку клиент идентификации TfgAppleIdAuthenticationClient поддерживается только на iOS, то на текущий момент кнопка доступна только на iOS. При запуске компонента на платформе Android он автоматически скрывается. Если же на текущей платформе не поддерживается идентификация AppleId, то кнопка так же по умолчанию автоматически скрывается. Это поведение управляется при помощи свойства AutoHideIfNotSupported. Улучшения 🙌 TfgCamera Улучшена обработка отсутствия прав на работу с камерой. Теперь если разрешение на работу с камерой было отозвано пока приложение находилось в фоне, приложение не упадет. Обновлен демонстрационный пример с камерой "Компоненты" -> "TfgCamera" -> "Фотокамера". Теперь при отсутствии прав на работу с камерой, приложение выводит об этом сообщение и не дает воспользоваться камерой. Жесты Реализованы жесты LongTap, DoubleTap и Zoom для базовых компонентов iOS. Добавлен демонстрационный пример по использованию жестов: "Жесты" -> "Жест LongTap - Длинное нажатие". Прочее Добавлен новый демонстрационный проект показывающий режимы отображения изображений, а также применение маски: "TfgImage" -> "Режимы отображения". Исправление ошибок 🐛 FGX-92 Реализовать использование маски для TfgImage (iOS). FGX-157 Не работает свойство TfgImage.MaskImageName (iOS). FGX-158 Некорректное поведение компонентов TfgNumberListPicker и TfgVirtualListPicker (Android). FGX-160 Множественные касания не распознавались (iOS). FGX-161 TfgPageControl - Ошибка при создании вкладок в рантайме при использовании тем (Android). FGX-SUPPORT-64 Длинные TfgToast сообщения не переносились на несколько строк (iOS). FGX-SUPPORT-65 Исправлена генерация пакета iOS приложения для AppStore, из-за которой раньше пакет не принимался в магазин (iOS). FGX-SUPPORT-67 TfgListMenu мог не отображать выделение, если компонент использовался в TfgDrawerLayout (iOS). FGX-SUPPORT-68 LongTap не работает в TfgCollectionView (iOS). FGX-SUPPORT-71 Приложение с камерой падало до iOS 12 включительно (iOS). FGX-SUPPORT-72 Приложение с TfgComboBox падало на системах до iOS 12 включительно (iOS). Не работал сканер штрихкодов (iOS). TfgListMenu содержал некорректный список выделенных элементов в события OnSelectionChanged (iOS). TfgActivityIndicator всегда отображался при старте не смотря на Visible=False (iOS). Иногда неверно рассчитывался размер итоговой фотографии TfgCamera. При фотографировании TfgCamera могло измениться качество превью TfgCameraPreview (iOS). Исправлена ошибка в RTL Delphi-Android мосту, которая приводила к падению сенсор локации на Android 12 (Android).
  15. Добрый вечер, Причину ошибки я установил. Работаю над исправлением. В ближайший релиз войдет это исправление. Релиз по плану до конца этой недели.
  16. Hello Omar, Fixed in 1.13.4.0
  17. Добрый день, Прикрепите, пожалуйста, демо проект. Спасибо
  18. Временное решение: принудительно подключить в любом месте модуль: {$IFDEF IOS} uses FGX.Scanner.Barcode.iOS; {$ENDIF}
×
×
  • Create New...